[发明专利]一种基于图片验证码识别的网络爬虫方法有效
申请号: | 201711415807.1 | 申请日: | 2017-12-25 |
公开(公告)号: | CN108062468B | 公开(公告)日: | 2021-08-24 |
发明(设计)人: | 闵信志;刘计争;高成俊 | 申请(专利权)人: | 南京烽火星空通信发展有限公司 |
主分类号: | G06F21/36 | 分类号: | G06F21/36;G06F16/951 |
代理公司: | 南京经纬专利商标代理有限公司 32200 | 代理人: | 杨海军 |
地址: | 210019 江苏省南京市建*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 图片 验证 识别 网络 爬虫 方法 | ||
本发明公开了一种基于图片验证码识别的网络爬虫方法,包括:爬虫程序的预处理和构建;计算机加载爬虫程序,使用浏览器访问网页;在网络请求超时、代理IP被限制访问、出现图片验证码时,由爬虫程序进行不同处理,在访问到爬虫需要爬取的网页时,将网页的内容下载并保存。本发明可以在被爬取的网站使用图片验证码限制网络爬虫爬取网站内容时,通过人工识别图片验证码,使得爬虫可以继续爬取网页。
技术领域
本发明公开了一种基于图片验证码识别的网络爬虫方法,涉及计算机网络技术领域。
背景技术
当前,网络爬虫的实现主要通过后面几个步骤,先使用网络听包工具,获取爬虫需要发起请求的url、请求头部、以及各种请求参数,然后编程模仿浏览器发起网络请求。但是有的网站在爬虫发起请求后会出现图片验证码,在网站有图片验证码策略的时候,要让爬虫能够正常运行,目前有如下方法:
1)测试网站对网络请求频率的限制,找到一个不触发图片验证码机制的请求频率。
2)使用网络上的图片验证码平台帮助识别图片验证码。
3)使用图片识别程序识别图片验证码的图片内容。
但是以上方法,在某些条件下还是存在不足:
1)网站的请求频率限制不是固定值时,第一种解决方案无法使用。
2)图片验证码平台,针对的是纯数字、纯字母或数字字母组合等简单图片验证码。当图片验证码中图片内容是日常生活中照片,并要求识别图片中指定的物体时,第二种解决方案也不可行。
3)在图片上有背景噪声,例如不同颜色的色块、删除线等时,图片识别程序的成功识别率不高。
发明内容
本发明所要解决的技术问题是:针对现有技术的缺陷,提供一种基于图片验证码识别的网络爬虫方法,所述方法在面对触发网站图片验证码机制的网络请求频率不是固定值的情形、图片验证码中图片内容有背景噪声或图片内容是日常生活中照片,并要求识别图片中指定的物体的情形,仍然可以完成爬取网页的任务。
本发明为解决上述技术问题采用以下技术方案:
一种基于图片验证码识别的网络爬虫方法,具体包括如下步骤:
步骤一、爬虫程序的预处理和构建;
所述爬虫程序的预处理具体包括以下步骤:
101、使用浏览器持续访问需要爬虫爬取的网页,一直到出现图片验证码;
102、获取图片验证码区域的xpath路径,计为路径1;
103、在图片验证码验证成功后,选择一处该阶段网页有别于其它阶段网页的html元素的xpath路径,计为路径2;
104、继续使用浏览器访问网页,一直到出现IP被限制访问,然后,选择一处该阶段网页有别于其他网页的html元素的xpath路径,计为路径3。
所述爬虫程序的构建包括:
构造爬虫程序的输入文件,每行文件内容为json格式,包含proxy和url两个字符串节点;
使用Selenium,配合Chrome Driver和java语言环境api,通过浏览器内置的自动化支持操作浏览器。
步骤二、计算机加载爬虫程序,使用浏览器访问网页。
步骤三、在网络请求超时、代理IP被限制访问、出现图片验证码时,由爬虫程序进行不同处理,在访问到爬虫需要爬取的网页时,将网页的内容下载并保存。
所述步骤三的具体处理方式为:
a)将爬虫程序的输入文件加载到计算机的内存中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京烽火星空通信发展有限公司,未经南京烽火星空通信发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711415807.1/2.html,转载请声明来源钻瓜专利网。