国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python登錄豆瓣并發帖的方法

2019-11-25 17:13:14
字體:
來源:轉載
供稿:網友

本文實例講述了python登錄豆瓣并發帖的方法。分享給大家供大家參考。具體如下:

這里涉及urllib、urllib2及cookielib常用方法的使用

登錄豆瓣,由于有驗證碼,采取的辦法是將驗證碼圖片下載到同目錄下,查看圖片后輸入驗證碼即可登錄、發帖

帖子內容寫死在代碼中了 

# -- coding:gbk --import sys, time, os, reimport urllib, urllib2, cookielibloginurl = 'https://www.douban.com/accounts/login'cookie = cookielib.CookieJar()opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie))params = {"form_email":"your email","form_password":"your password","source":"index_nav" #沒有的話登錄不成功}#從首頁提交登錄response=opener.open(loginurl, urllib.urlencode(params))#驗證成功跳轉至登錄頁if response.geturl() == "https://www.douban.com/accounts/login":  html=response.read()  #驗證碼圖片地址  imgurl=re.search('<img id="captcha_image" src="(.+?)" alt="captcha" class="captcha_image"/>', html)  if imgurl:    url=imgurl.group(1)    #將圖片保存至同目錄下    res=urllib.urlretrieve(url, 'v.jpg')    #獲取captcha-id參數    captcha=re.search('<input type="hidden" name="captcha-id" value="(.+?)"/>' ,html)    if captcha:      vcode=raw_input('請輸入圖片上的驗證碼:')      params["captcha-solution"] = vcode      params["captcha-id"] = captcha.group(1)      params["user_login"] = "登錄"      #提交驗證碼驗證      response=opener.open(loginurl, urllib.urlencode(params))      ''' 登錄成功跳轉至首頁 '''      if response.geturl() == "http://www.douban.com/":        print 'login success ! '        print '準備進行發帖'        p={"ck":""}        c = [c.value for c in list(cookie) if c.name == 'ck']        if len(c) > 0:          p["ck"] = c[0].strip('"')            addtopicurl="http://www.douban.com/group/python/new_topic"        res=opener.open(addtopicurl)        html=res.read()        m= re.search('<input type="hidden" name="topic_id" value="(.+?)">', html)         p["topic_id"] = m.group(1)        m= re.search('<input type="hidden" name="topic_id_sig" value="(.+?)">', html)         p["topic_id_sig"] = m.group(1)        p["rev_title"] = 'title'        p["rev_text"] = 'send body'        p["rev_submit"] = '好了,發言'        request=urllib2.Request(addtopicurl)        request.add_header("User-Agent","Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11")        request.add_header("Accept-Charset", "GBK,utf-8;q=0.7,*;q=0.3")        request.add_header("Origin", "http://www.douban.com")        request.add_header("Referer", "http://www.douban.com/group/python/new_topic")        opener.open(request, urllib.urlencode(p))

希望本文所述對大家的Python程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 铜川市| 祁阳县| 都匀市| 博野县| 呼玛县| 聊城市| 沙雅县| 丰镇市| 南漳县| 榆林市| 乳源| 嘉荫县| 安宁市| 古蔺县| 丹东市| 烟台市| 象州县| 微山县| 达孜县| 休宁县| 扎兰屯市| 灵武市| 黄石市| 固阳县| 大新县| 岑巩县| 乡宁县| 上虞市| 胶州市| 汉沽区| 张家口市| 龙井市| 白山市| 罗城| 永泰县| 革吉县| 公主岭市| 玉环县| 公主岭市| 肇东市| 延长县|