有很多网站,是需要登录账号密码以后,才能采集到目标数据的。有的网站登录时还会需输入验证码。

针对这类网站,八爪鱼提供多种解决方法。本课将详细讲解。

 

一、需输入账号、密码登录

 

方法一:浏览器模式中输入账号、密码登录+记住Cookie

 

针对需要登录的网站,我们可以先将八爪鱼切换成浏览器模式,在浏览器模式下完成登录。然后通过获取Cookie记住登录状态。这样,八爪鱼就能在执行采集任务时,直接以登录状态打开网页,然后再采集数据。

 

以豆瓣网为为例,

登录网址为:https://www.douban.com

实际要采集数据的网址为:https://book.douban.com/tag/%E5%B0%8F%E8%AF%B4

 

步骤1、使用浏览器模式,输入账号密码,完成登录

在客户端首页,输入登录网址,打开网页后,点击 按钮,进入浏览器模式。在浏览器模式中,输入账号密码并登录。可以看到,现在,我们已经以登录状态访问网页。

 

 

特别说明:

a. 八爪鱼提供浏览器模式。点击 按钮,即可进入浏览器模式。在浏览器模式下,和用普通浏览器访问网页完全一样:只可浏览网页数据,不可配置规则。如需编辑规则,点击【编辑模式】切换回编辑规则模式。

 

鼠标放到图片上,右键,选择【在新标签页中打开图片】可查看高清大图

下文其他图片同理

 

步骤2、记住Cookie

 

现在,我们已经处于登录状态,八爪鱼可以获取登录后的Cookie,记住登录状态。

从左侧拖入一个【打开网页】步骤,输入我们要采集数据的目标网址:https://book.douban.com/tag/%E5%B0%8F%E8%AF%B4。然后选中此【打开网页】步骤,→ 勾选【自定义Cookie】→ 点击【获取当前页面的Cookie】(点击之后可以看到框中出现了cookie)→ 点击【确定】保存。

八爪鱼会记住这个Cookie状态,启动采集后,会以登录状态打开网页。

 

 

特别说明:

a. Cookie是什么?通俗的说,Cookie是一些存储在用户电脑上的小文件,用来保存一些站点的用户数据,作用是让浏览器为用户定制内容。例如:用户第一次访问某网站,输入了账号密码登录。浏览器会问你是否需要“记住账号密码”。选择是以后,浏览器就会将这些账号密码信息存储在用户电脑上。下次再访问此网站,就无需再次输入账号密码。

b. cookie是有生命周期的,这个周期多长时间取决于采集的网站。如果Cookie到期了,就需要再重新获取一次登陆之后的Cookie。

c. 如果需要切换账号,可以打开【高级选项】,勾选【打开网页前先清理缓存】。这样,每次打开网页时都会清理掉缓存信息,以未登录状态打开网页,此时再登录新账号即可。

 

步骤3、按照需求,配置采集任务

 

接下来,请根据采集需求,自行配置采集任务。在这里以提取第1页的列表数据为例。如若不会,请看 新手入门教程

 

 

可以看到,在启动本地采集以后,八爪鱼就以登录状态打开网页,采集数据。

 

 

 

方法二:配置登录的采集流程

 

也可以在采集流程中配置【输入账号-输入密码-点击登录】步骤,模拟登录。这样,八爪鱼在执行采集任务时,就会走一遍输入账号密码的流程。

 

步骤1、配置输入账号、输入密码的流程

 

在采集流程中配置【输入账号-输入密码-点击登录】的步骤。

 

 步骤2、按照需求,配置采集任务

 

这里以简单的,提取一个字段为例。

启动本地采集后,可以看到,八爪鱼执行了一遍输入账号-输入密码-点击登录】的过程,完成登录并提取到数据。

 

二、需输入账号、密码、验证码登录

 

方法一:浏览器模式中输入账号、密码、验证码登录+记住Cookie

 

按照前面说的方法,打开八爪鱼的浏览器模式,在浏览器模式中输入账号、密码、验证码。同样再按前面说的方法,记住cookie。

然后再按照需求配置规则,不再赘述。

 

记住cookie十分方便,每次直接以登录状态打开网页采集数据。

但如果目标网站需要每次采集都输入账号、密码、验证码登录一遍,怎么办?每次输入的验证码会变化,八爪鱼如何处理?

 

方法二:配置登录的采集流程,手动识别验证码

 

在八爪鱼中,可以在进行本地采集时,手动识别验证码,支持几乎所有类型的验证码。

 

步骤1. 按照前面说的方法,配置【输入账号-输入密码】的步骤。

步骤2. 将八爪鱼切换成浏览器模式,输入验证码。

 

特别说明:

a. 为什么不像输入账号密码那样,做一个【输入验证码】的流程?因为账号密码是固定不变的,八爪鱼可以按照我们的设定,将其输入进去。面对变化的验证码,这样做不行。

 

步骤3. 取消浏览器模式,选中登录按钮,做【点击登录】步骤。现在,我们完成了登录。

 

步骤4. 对【点击登录】步骤,设置【执行前等待】,等待的时间长一点。这么做的目的是:在八爪鱼执行采集任务时,自动输入账号密码后,在【点击登录】前等待一段时间,这个等待的时间用于我们手动输入验证码。

 

步骤5. 按照需求,配置采集规则。这里简单提取一个数据。

步骤6. 启动采集后,可以看到,八爪鱼在输完账号密码后,处于等待状态。我们手动输入验证码,等待结束后,点击登录按钮完成登录,并采集到想要的数据。

 

特别说明:

a. 几乎所有类型的验证码,都可以通过此方法完成验证:输入验证码、滑块验证码、手势验证码。因为是我们自己手动完成验证的。

b. 此方法只能用于本地采集,不能用于云采集。因为手动输入验证码需要看到运行采集任务的过程,本地采集可以看到,云采集看不到采集过程。

 

方法三:配置登录的采集流程,自动识别验证码

 

八爪鱼提供自动打码工具,可以实现自动识别验证码。支持自动识别【在输入框中输入验证码】和【滑块验证码(部分)】。

 

 

在输入框中输入验证码

 

先配置【输入账号-输入密码】的流程,然后使用【八爪鱼验证码识别】控件。

 

滑块验证码(部分)

 

特别说明:

a.【八爪鱼验证码识别控件】,只支持识别两种类型的验证码:输入验证码、滑块验证码(部分)。

b. 此方法可以用于本地采集,需要手动输入验证码。

c. 此方法最常用于云采集,配合验证码套餐实现自动打码。验证码套餐需额外购买,点击查看并购买 验证码套餐。