QQ登录

只需一步,快速开始

搜索
查看: 104|回复: 3

[学习笔记] 45 豆瓣模拟登陆

[复制链接]
最佳答案
17 
累计签到:141 天
连续签到:2 天
发表于 2017-10-12 18:12:59 | 显示全部楼层 |阅读模式

马上注册加入鱼C,享用更多服务吧^_^

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

x
本帖最后由 和vvv 于 2017-10-12 18:14 编辑
45 豆瓣模拟登陆

一、分析情况

模拟登陆豆瓣,跟登录CSDN相似。但有一点不同,此时来说,CSDN不管你登录多少次,是不会有验证码出现的。而在登录豆瓣时,输入密码错误几次之后,就会出现图片验证码。这样的:
无标题.png

同时,如果我们用爬虫在短时间内登陆多次,便发现不能再登陆成功了。这是因为出现了验证码,而我们在提交POST数据时,没有加入验证码字段。

二、处理验证码问题

这里的验证码就是输入图片中的字符。我们找到有验证码时登录,进行数据分析。发现是这样的:


2.png



发现其比没有验证码时多了2个字段。一个是验证码图片中的字符(captcha-solution),一个是验证码id标识号(captcha-id)。验证码的值好理解,ID又是用来干什么呢?猜一下,是用来标识验证码身份的唯一性(经验)。然后我们去网页的源码中查找,刚好找到(又是经验加分析):
6.png


这里captcha-id的值和POST中的一样呢。那就简单了,每次提交数据之前,先爬取登陆首页,提取出captcha-id的值。那还有captcha-solution呢?不就是输入验证码吗。

想了想,应该有两种处理的方式:1、每次把验证码图片保存下来,手动输入。 2、程序自动识别验证码图片中的字符,自动输入。不用说也知道第二种方法比较麻烦,查了一下资料,有很多方法:(1)要么自己写程序来识别(图片识别之类的)。(2)利用别人已经做好的平台。(网上一搜 云打码 就会有许多资料)。这里,由于技术和金钱有限,就是用第一种了。


三、程序实现

完整代码:

游客,如果您要查看本帖隐藏内容请回复


本帖被以下淘专辑推荐:

1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:9 天
连续签到:6 天
发表于 2017-10-13 08:57:45 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 

尚未签到

发表于 2017-10-13 18:12:07 | 显示全部楼层
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
最佳答案
0 
累计签到:38 天
连续签到:1 天
发表于 前天 09:16 | 显示全部楼层
嘿嘿,知识是无价的~~~~~~
1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

小甲鱼强烈推荐上一条 /1 下一条

小黑屋手机版Archiver( 粤公网安备 44051102000370号 | 粤ICP备11014136号

© 2010-2017 FishC.com GMT+8, 2017-10-22 03:36 Powered by Discuz! X2.5 Theme by dreambred

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