一种基于虚拟登陆的数据采集方法

文档序号:9551135阅读:200来源:国知局
一种基于虚拟登陆的数据采集方法
【技术领域】
[0001]本发明涉及数据采集技术,尤其涉及一种基于虚拟登陆的数据采集方法。
【背景技术】
[0002]互联网数据以开放、免费、庞大等优势,大大地促进了大数据产业的发展。数据采集、清洗、过滤、挖掘、分析等成为大数据产业重要的组成部分。然而,部分网站为保护数据或减轻网站服务器压力,限制了非本网站用户的访问。对于这类的网站,只有注册后并登陆才能访问数据。因此,如何通过系统模拟登录部分网站,成为数据采集人员首要解决的问题之一Ο
[0003]现在很多网站基于安全保护的目的,限制了非用户的访问者禁止访问部分关键数据。只有用户在登录本网站之后,用户才可以访问本网站的所有数据。因此,有效控制了网络爬虫以及其他软件对本网站的访问,同时也减轻了网站运行服务器的压力。
[0004]在现有的爬虫软件采集内容过程中,那些对非用户不开放的内容,通过这些软件是采集不到的,获取的网页信息只是正文的部分信息,从而导致采集结果不完整。

【发明内容】

[0005]为了解决该问题,本文提出了一种基于虚拟登陆的数据采集方法,实现预设用户名和密码,能够自动化采集受限制的目标数据。
[0006]本发明的技术方案是:
一种基于虚拟登陆的数据采集方法,包括
1)HttpClient虚拟登录
通过和目标网址建立联系通话,获取输出流,程序写入用户登录信息,登陆成功后,将身份信息写入Cookie,在访问该网站的其他网页时发送Cookie信息,获取访问权限。
[0007]2 )验证码识别与提交
在识别验证码的过程中,首先需要对图片进行初步的预处理,包括去掉干扰线、去掉背景噪点、字符矫正。
[0008]通过模拟登录,向各网站服务器发送表明身份的Cookie,网站会将系统当作本网站的会员,从而获取全面、完整的网页内容。
[0009]本发明采用Cookie保存用户信息实现了模拟登录网站从而获取已注册用户才能访问的内容,从而实现了免注册采集网页内容。
[0010]本发明的有益效果是通过模拟登陆、验证码识别,可以由计算机采集现有的绝大部分需登录才能访问目标信息的网站,从而避免了人工登录系统手动采集,大大提高了数据采集效率和采集质量。
【附图说明】
[0011]图1是本发明的HttpClient虚拟登录流程图; 图2是本发明的验证码识别与提交流程图。
【具体实施方式】
[0012]下面对本发明的内容进行更加详细的阐述:
1、HttpClient虚拟登录
功能设计:通过和目标网址建立联系通话,获取输出流,程序写入用户登录信息,登陆成功后,将身份信息写入Cookie,在访问该网站的其他网页时发送Cookie信息,获取访问权限。如下是详细的流程设计:
1)、通过目标网页的URL,通过系统封装的客户端(webClient)模拟访问目标网页,建立本地与目标网页的交流通道;
2)、使用交流通道获取网站信息,并从本地数据库读取已保存的本网站用户名和密码,建立访问目标网站的“身份证” 一Cookie ;
3)、访问目标网页时,将Cookie作为附加信息提交给网站服务器,向目标网站表明身份一 “我是会员”;
4)、网站将webClient提交的访问请求进行解析,并对Cookie中的内容进行解读,验证Cookie中保存的用户名和密码,然后返回完整的网页内容。
[0013]2、在识别验证码的过程中,首先需要对图片进行初步的预处理,包括去掉干扰线、去掉背景噪点、字符矫正等等。主要流程如下:
1).学习样本图像库,对验证码图片进行预处理
根据验证码的特点,手动获取多个(20个左右)类似的验证码,根据验证码的特点分析验证码的生成流程,其中包括亮度设置、添加背景噪点等。通过学习库,程序可以通过逆向化验证码生成的过程,从而通过去除背景噪点,人工设定图片亮度等流程,生成“干净”的验证码图片。
[0014]2).初步识别
将经过清洗后的验证码图片库进行解析,系统自动分析图片亮度进而将图片进行分害J,然后逐个将字符图片进行识别。
[0015]3).校正学习库
根据系统识别的验证码与正确的验证码进行对比,根据正确率调整系统的识别阈值。重返第一步,反复识别,直至正确率达到100%。
【主权项】
1.一种基于虚拟登陆的数据采集方法,其特征在于,包括 1)HttpClient 虚拟登录; 2)验证码识别与提交。2.根据权利要求1所述的方法,其特征在于, HttpClient虚拟登录: 通过和目标网址建立联系通话,获取输出流,程序写入用户登录信息,登陆成功后,将身份信息写入Cookie,在访问该网站的其他网页时发送Cookie信息,获取访问权限。3.根据权利要求1所述的方法,其特征在于, 验证码识别与提交: 在识别验证码的过程中,首先需要对图片进行初步的预处理,包括去掉干扰线、去掉背景噪点、字符矫正。
【专利摘要】本发明提供一种基于虚拟登陆的数据采集方法,涉及数据采集技术领域,本发明包括1)HttpClient虚拟登录;2)验证码识别与提交。采用Cookie保存用户信息实现了模拟登录网站从而获取已注册用户才能访问的内容,从而实现了免注册采集网页内容。
【IPC分类】H04L12/26, G06F21/36, H04L29/06
【公开号】CN105306293
【申请号】CN201510659540
【发明人】王贵友, 崔乐乐, 王传超
【申请人】浪潮软件集团有限公司
【公开日】2016年2月3日
【申请日】2015年10月14日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1