【技巧】自动识别出现验证码的采集规则示例!
优采云 发布时间: 2021-07-24 20:43【技巧】自动识别出现验证码的采集规则示例!
采集过程中,验证码可能会在某个步骤后不规则出现,影响正常的采集。
这种情况一般是因为采集速度快,数据量大,触发了网站的采集预防机制。
通过设置【判断条件】+【自动验证码识别】,可以自动识别出现的验证码,保证数据采集的稳定性。
以下是具体的例子。
Step1:首先根据需求配置采集规则
示例网址:
在搜狗微信输入关键词search,点击搜索结果的公众号ID,进入公众号介绍页面。
Step2:找到出现验证码的页面
创建了采集规则,手动执行几次后,发现【点击列表链接】后,会时不时出现验证码。
注意:不同网站验证码出现的位置可能不同,请仔细观察。
Step3:在可能出现验证码的步骤后添加判断条件
在这个例子中,验证码出现在【点击列表链接】之后,所以在这一步之后,添加一个【判断条件】步骤。
Step4:设置判断条件
找到验证码出现后页面的特征,作为判断条件,与没有验证码的正常页面区分开来。
例如本例中页面出现验证码后,会有文字提示【为了保护您的网络安全,请输入验证码】,但正常页面上没有这样的提示.
您可以使用【为了保护您的网络安全,请输入验证码】作为判断条件:
设置左分支的执行条件为:【当前页面收录文字】,输入文字【请输入验证码】;
右分支设置的执行条件为:【无判断。始终执行此分支]。
Step5:设置【验证码识别】控件
为了理清我们的需求,我们需要:
如果在【点击列表链接】后出现验证码,到左边分支继续【自动验证码识别】;
如果[点击列表链接]后没有出现验证码,请继续执行采集步骤。
因此需要在左分支添加【验证码识别】控件。
请按照页面上的说明逐步操作:
①选择【判断条件-分支】(即最左边的分支)
②选择页面上的验证码输入框,在弹出的操作提示框中选择【识别验证码】
③选择页面上的验证码图片
④ 继续选择页面上的【确定】按钮
⑤ 配置【识别失败】场景:点击【确定】,优采云会自动提交错误验证码,此时会出现页面
提示。点击页面
,然后在操作提示框中点击【确认错误】。
⑥ 配置【识别成功】场景。点击【开始配置识别成功场景】,在弹出的操作提示框中输入正确的验证码,然后点击【应用到网页并完成配置】,可以看到验证码输入成功,验证码页面消失,显示正常页面数据。
至此【判断条件】+【身份验证码】配置完成,剩下的就是根据需要配置采集流程了。
特别说明:
一个。为什么要配置【识别失败】场景?由于验证码是自动识别的,可能存在识别错误(网站需要多次输入验证码/优采云与打码平台对接有0.1%的错误概率)。 优采云需要知道识别错误后的提示是什么,根据提示是否出现来判断识别是否失败。如果识别失败,会自动重新识别,直到识别正确为止。
关于【自动识别验证码】的其他注意事项:
1、【自动识别验证码】会消耗验证码余额,如果没有余额需要购买验证码包
2、在做本地采集时,第一次需要帮助系统,点击【确认】一次。做云采集时,这个过程由优采云自己完成,不需要用户手动确认。
3、【自动识别验证码】,只支持两种验证码:输入验证码和部分滑块验证码。详情请参考验证码包介绍。
4、【自动识别验证码】默认勾选Ajax,超时时间为5秒。可以根据网站的实际加载情况进行更改。
关于【判断条件】的其他注意事项:
1、 不允许分支中的任何步骤。
2、 对于需要同时判断的多个条件,需要嵌套多个分支判断。不过建议把判断条件选好后的URL放到优采云中采集data中。
3、优采云在分支判断中,判断分支是【存在】还是【不存在】更加简单方便。比较判断大小的操作比较繁琐,需要通过XPath来实现。
5、如果不同分支有不同的[提取元素]步骤,则每个分支中所有[提取元素]步骤的字段总数和字段名称必须一致。