鱼C论坛

 找回密码
 立即注册
查看: 2514|回复: 8

[已解决]豆瓣登录

[复制链接]
发表于 2020-8-7 20:31:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. # -- coding:gbk --
  2. import re
  3. import urllib.request
  4. import urllib.parse
  5. import http.cookiejar

  6. loginurl = urllib.request.Request('https://accounts.douban.com/passport/login', headers={'User-agent': 'Mozilla/5.0'})
  7. cookie = http.cookiejar.CookieJar()
  8. opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cookie))

  9. data = {
  10. "form_email":"your email",
  11. "form_password":"your password",
  12. "source":"index_nav"
  13. }
  14. data = {}
  15. data['form_email'] = 'sxxxx'
  16. data['form_password'] = 'suxxxxxx'
  17. data['source'] = 'index_nav'


  18. #从首页提交登录
  19. response=opener.open(loginurl, urllib.parse.urlencode(data).encode('utf-8'))

  20. #验证成功跳转至登录页
  21. if response.geturl() == "https://accounts.douban.com/passport/login":
  22.     html=response.read().decode('utf-8')

  23.     #验证码图片地址
  24.     imgurl=re.search('<img id="captcha_image" src="(.+?)" alt="captcha" class="captcha_image"/>', html)
  25.     if imgurl:
  26.         url=imgurl.group(1)
  27.         #将图片保存至同目录下
  28.         res=urllib.request.urlretrieve(url, 'v.jpg')
  29.         #获取captcha-id参数
  30.         captcha=re.search('<input type="hidden" name="captcha-id" value="(.+?)"/>' ,html)
  31.         if captcha:
  32.             vcode=input('请输入图片上的验证码:')
  33.             params["captcha-solution"] = vcode
  34.             params["captcha-id"] = captcha.group(1)
  35.             params["user_login"] = "登录"
  36.             #提交验证码验证
  37.             response=opener.open(loginurl, urllib.parse.urlencode(params).encode('utf-8'))
  38.             ''' 登录成功跳转至首页 '''
  39.             if response.geturl() == "https://www.douban.com/":
  40.                 print('login success ! ')
  41.             else:
  42.                 print('Failed')
  43.         else:
  44.             print('3')
  45.     else:
  46.         print(2)
  47. else:
  48.     print(1)
复制代码


为什么获取不了imgurl?
最佳答案
2020-8-7 20:34:36
本帖最后由 1q23w31 于 2020-8-7 21:03 编辑

2020-8-7 20-33-57.png
哪有验证码?代码过时了吧
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-8-7 20:34:36 | 显示全部楼层    本楼为最佳答案   
本帖最后由 1q23w31 于 2020-8-7 21:03 编辑

2020-8-7 20-33-57.png
哪有验证码?代码过时了吧
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-8-7 22:17:12 | 显示全部楼层
1q23w31 发表于 2020-8-7 20:34
哪有验证码?代码过时了吧

按照课后习题答案敲的。
可能过时了。。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-8-7 22:20:08 | 显示全部楼层
sharank 发表于 2020-8-7 22:17
按照课后习题答案敲的。
可能过时了。。

那就学习思路就好了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-8-8 20:11:25 | 显示全部楼层
@zltzlt 请求结帖
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-8-8 20:12:42 | 显示全部楼层

收到
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-8-10 07:58:12 | 显示全部楼层

已解决?我还在困扰中,怎么就已解决了?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-8 18:05:36 | 显示全部楼层
原来是过时了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-9 09:31:50 | 显示全部楼层
这是用代码登录?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-26 22:13

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表