本发明专利技术实施例公开了一种网络爬虫自动化获取网页信息方法、装置及系统,通过预先配置的网络爬虫自动启动浏览器并进入目标网页登录页面;在所述目标网页登录页面通过模拟键盘输入账号和密码完成模拟登录;获取目标网页服务器返回的cookie信息并保存;向所述目标网页服务器发送携带有所述cookie信息的访问请求访问目标网页并爬取网页信息。通过网络爬虫模拟真实登录过程,实现真实的账号和密码输入,获取cookie信息完成网页爬取,即便需要进行登录验证,登录安全控件升级以及网页参数的改变都不影响网页爬取的正常使用,减少客户端系统程序升级,最大程度减少不可控风险。
A method, device and system for automatically obtaining web page information by web crawler
【技术实现步骤摘要】
一种网络爬虫自动化获取网页信息方法、装置及系统
本专利技术实施例涉及计算机
,具体涉及一种网络爬虫自动化获取网页信息方法、装置及系统。
技术介绍
网页爬虫,又称网络蜘蛛或网络机器人,是一种按照一定规则自动抓取万维网信息的程序或脚本,对于网页爬虫来说,其核心目的就是快速、准确地抓取源网页的各类信息。传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。聚焦爬虫的工作流程较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的URL队列,然后根据一定的搜索策略从队列中选择下一步要抓取的网页URL,并重复上述过程,直到达到系统的某一条件时停止。现在很多网站都需要先进行账号登录才能爬取,传统的网页爬取方法存在以下缺陷:如果网站新增登录安全控件进行反爬虫,加密控件可以对用户输入密码进行加密,安全控件难以破解,将导致无法获取网页信息;如果目标网页参数名发生变化,将导致信息获取失败或者错误;以上缺陷将导致客户端系统信息查询失败,需要程序升级,不可控因素将影响系统正常运行。
技术实现思路
为此,本专利技术实施例提供一种网络爬虫自动化获取网页信息方法、装置及系统,以解决现有的网页爬取方法由于登录安全控件的存在或者网页参数的改变等导致信息获取失败的问题。为了实现上述目的,本专利技术实施例提供如下技术方案:根据本专利技术实施例的第一方面,提出了一种网络爬虫自动化获取网页信息方法,所述方法包括:通过预先配置的网络爬虫自动启动浏览器并进入目标网页登录页面;在所述目标网页登录页面通过模拟键盘输入账号和密码完成模拟登录;获取目标网页服务器返回的cookie信息并保存;向所述目标网页服务器发送携带有所述cookie信息的访问请求访问目标网页并爬取网页信息。进一步地,通过预先配置的网络爬虫自动启动浏览器并进入目标网页登录页面之前,所述方法还包括:通过定时器设置定时python网络爬虫。进一步地,通过预先配置的网络爬虫自动启动浏览器并进入目标网页登录页面,具体包括:所述网络爬虫通过调用Selenium自动化测试工具对所述浏览器进行操作。进一步地,在所述目标网页登录页面通过模拟键盘输入账号和密码完成模拟登录,具体包括:所述网络爬虫通过调用winIO函数库,生成键盘电信号,触发键盘按键事件,进行账号和密码的模拟输入。进一步地,获取目标网页服务器返回的cookie信息并保存,具体包括:所述网络爬虫通过使用BrowserMobProxy代理服务器抓取所述浏览器的http数据包,并提取所述cookie信息。进一步地,向所述目标网页服务器发送携带有所述cookie信息的访问请求访问目标网页并爬取网页信息之前,所述方法还包括:检验所述cookie信息是否过期,若过期,则通过网络爬虫重新模拟登录获取有效的cookie信息。根据本专利技术实施例的第二方面,提出了一种网络爬虫自动化获取网页信息装置,其特征在于,所述装置包括:cookie获取模块,用于通过预先配置的网络爬虫自动启动浏览器并进入目标网页登录页面;在所述目标网页登录页面通过模拟键盘输入账号和密码完成模拟登录;获取目标网页服务器返回的cookie信息并保存;网页爬取模块,用于向所述目标网页服务器发送携带有所述cookie信息的访问请求访问目标网页并爬取网页信息。进一步地,所述cookie获取模块还用于:通过定时器设置定时python网络爬虫。根据本专利技术实施例的第三方面,提出了一种网络爬虫自动化获取网页信息系统,其特征在于,所述系统包括:处理器和存储器;所述存储器用于存储一个或多个程序指令;所述处理器,用于运行一个或多个程序指令,用以执行如上一种网络爬虫自动化获取网页信息方法中任一所述的方法步骤。根据本专利技术实施例的第四方面,提出了一种计算机存储介质,其特征在于,所述计算机存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于被一种网络爬虫自动化获取网页信息系统执行如上一种网络爬虫自动化获取网页信息方法中任一所述的方法步骤。本专利技术实施例具有如下优点:本专利技术实施例提出的一种网络爬虫自动化获取网页信息方法、装置及系统,通过预先配置的网络爬虫自动启动浏览器并进入目标网页登录页面;在所述目标网页登录页面通过模拟键盘输入账号和密码完成模拟登录;获取目标网页服务器返回的cookie信息并保存;向所述目标网页服务器发送携带有所述cookie信息的访问请求访问目标网页并爬取网页信息。通过网络爬虫模拟真实登录过程,实现真实的账号和密码输入,获取cookie信息完成网页爬取,即便需要进行登录验证,登录安全控件升级以及网页参数的改变都不影响网页爬取的正常使用,减少客户端系统程序升级,最大程度减少不可控风险。附图说明为了更清楚地说明本专利技术的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。图1为本专利技术实施例1提供的一种网络爬虫自动化获取网页信息方法流程示意图;图2为本专利技术实施例2提供的一种网络爬虫自动化获取网页信息装置结构示意图;图3为本专利技术实施例3提供的一种网络爬虫自动化获取网页信息系统结构示意图。具体实施方式以下由特定的具体实施例说明本专利技术的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本专利技术的其他优点及功效,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例1提出了一种网络爬虫自动化获取网页信息方法,具体如图1所示,该方法包括:步骤110、通过预先配置的网络爬虫自动启动浏览器并进入目标网页登录页面。本实施例中,利用Python爬虫进行网页信息爬取,首先将python爬虫脚本独立部署在一台具有python环境的windows机器运行。在执行步骤110之前,该方法还包括:通过定时器设置定时python网络爬虫。通过win定时器实现定时爬虫任务。步骤110具体包括:网络爬虫通过调用Selenium自动化测试工具对浏览器进行操作。Selenium自动化测试工具可以模拟用户的真实操作来调用浏览器执行打开网页、输入账号和密码、点击登录等操作。步骤120、在目标网页登录页面通过模拟键盘输入账号和密码完成模拟登录。步骤120具体包括:网络爬虫通过调用winIO函数库,生成键盘电信号,触发键盘按键事件,进行账号和密码的模拟输入。经过步骤110自动启动浏本文档来自技高网...
【技术保护点】
1.一种网络爬虫自动化获取网页信息方法,其特征在于,所述方法包括:/n通过预先配置的网络爬虫自动启动浏览器并进入目标网页登录页面;/n在所述目标网页登录页面通过模拟键盘输入账号和密码完成模拟登录;/n获取目标网页服务器返回的cookie信息并保存;/n向所述目标网页服务器发送携带有所述cookie信息的访问请求访问目标网页并爬取网页信息。/n
【技术特征摘要】
1.一种网络爬虫自动化获取网页信息方法,其特征在于,所述方法包括:
通过预先配置的网络爬虫自动启动浏览器并进入目标网页登录页面;
在所述目标网页登录页面通过模拟键盘输入账号和密码完成模拟登录;
获取目标网页服务器返回的cookie信息并保存;
向所述目标网页服务器发送携带有所述cookie信息的访问请求访问目标网页并爬取网页信息。
2.根据权利要求1所述的一种网络爬虫自动化获取网页信息方法,其特征在于,通过预先配置的网络爬虫自动启动浏览器并进入目标网页登录页面之前,所述方法还包括:
通过定时器设置定时python网络爬虫。
3.根据权利要求1所述的一种网络爬虫自动化获取网页信息方法,其特征在于,通过预先配置的网络爬虫自动启动浏览器并进入目标网页登录页面,具体包括:
所述网络爬虫通过调用Selenium自动化测试工具对所述浏览器进行操作。
4.根据权利要求1所述的一种网络爬虫自动化获取网页信息方法,其特征在于,在所述目标网页登录页面通过模拟键盘输入账号和密码完成模拟登录,具体包括:
所述网络爬虫通过调用winIO函数库,生成键盘电信号,触发键盘按键事件,进行账号和密码的模拟输入。
5.根据权利要求1所述的一种网络爬虫自动化获取网页信息方法,其特征在于,获取目标网页服务器返回的cookie信息并保存,具体包括:
所述网络爬虫通过使用BrowserMobProxy代理服务器抓取所述浏览器的http数据包,并提取所述co...
【专利技术属性】
技术研发人员:杨艺祥,吴文青,唐禹,陈胜路,
申请(专利权)人:天阳宏业科技股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。