首页 / PYTHON / python登录豆瓣并发帖的方法
python登录豆瓣并发帖的方法
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python登录豆瓣并发帖的方法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2155字,纯文字阅读大概需要4分钟。
内容图文
![python登录豆瓣并发帖的方法](/upload/InfoBanner/zyjiaocheng/435/1f8ce88f825a4b5186fa534238c2c82b.jpg)
这里涉及urllib、urllib2及cookielib常用方法的使用
登录豆瓣,由于有验证码,采取的办法是将验证码图片下载到同目录下,查看图片后输入验证码即可登录、发帖
帖子内容写死在代码中了
# -- coding:gbk -- import sys, time, os, re import urllib, urllib2, cookielib loginurl = '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('', html) if imgurl: url=imgurl.group(1) #将图片保存至同目录下 res=urllib.urlretrieve(url, 'v.jpg') #获取captcha-id参数 captcha=re.search('' ,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('', html) p["topic_id"] = m.group(1) m= re.search('', 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程序设计有所帮助。
内容总结
以上是互联网集市为您收集整理的python登录豆瓣并发帖的方法全部内容,希望文章能够帮你解决python登录豆瓣并发帖的方法所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。