[发明专利]基于Scrapy的网站URL爬取方法在审
申请号: | 201911323361.9 | 申请日: | 2019-12-20 |
公开(公告)号: | CN111125485A | 公开(公告)日: | 2020-05-08 |
发明(设计)人: | 何建锋;袁莺;马昱阳 | 申请(专利权)人: | 西安交大捷普网络科技有限公司 |
主分类号: | G06F16/951 | 分类号: | G06F16/951;G06F16/955;G06F16/958 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 710075 陕西省*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 scrapy 网站 url 方法 | ||
1.基于Scrapy的网站URL爬取方法,其特征在于,包括:
S1.从第一数据库读取目标URL,请求并下载目标URL的网页;
S2.从网页中提取出所有URL,并进行布隆去重;
S3.将去重后的URL同时存入第一数据库与第二数据库;
S4.从第一数据库读取同域名的URL进行去重并保存,对去重后的URL构造http请求并再次爬取,返回步骤S1。
2.根据权利要求1所述的URL爬取方法,其特征在于,S14中,当触发URL的停止爬取条件时,从第一数据库读取新的目标URL开始爬取。
3.根据权利要求2所述的URL爬取方法,其特征在于,所述URL的停止爬取条件包括:当URL的DNS查询超时,和/或,网页的下载超时,停止当前URL的爬取,读取下一目标URL。
4.根据权利要求2所述的URL爬取方法,其特征在于,所述URL的停止爬取条件包括:最近N时长内至少产生M个新URL;当最近N时长内,URL网页内的新增URL未达到M个,则停止爬取,读取下一目标URl。
5.根据权利要求1任一所述的URL爬取方法,其特征在于,S14中,设置至少两个爬取进程,每个爬取进程分别爬取一个域名下的网页,每个爬取进程设置对应的待爬取URL队列。
6.根据权利要求2至5任一所述的URL爬取方法,其特征在于,当触发URL的爬取停止条件时,清空当前爬取进程的URL队列。
7.根据权利要求1所述的URL爬取方法,其特征在于,网页内URL的提取使用XPath;第一数据库为Redis数据库,待爬取URL以分布式消息队列形式进行存储;第二数据库为Mysql数据库, 存储已爬取待分析的URL;S14中所述的同域名URL去重,利用Python的Set容器实现。
8.根据权利要求1所述的URL爬取方法,其特征在于,还包括提取网站缩略标志:
S51.从第二数据库读取待分析的URL,下载网页;
S52.从网页中提取出网站标题与所有链接,对所述链接按关键字进行过滤,得到图片链接与网站缩略标志链接;
S53.对所述链接进行去重后发送http请求,判断网站缩略标志文件是否下载成功:
若下载成功则按配置要求进行裁剪后保存图片文件,
若未下载成功则使用其他下载成功的图片作为网站缩略标志进行保存,若该网页的所有图片均未下载成功则将网站标题的第一个汉字绘制为网站缩略标志进行保存;
以所述网站缩略标志图片的MD5码作为命名,写入数据库。
9.根据权利要求8所述的URL爬取方法,其特征在于,网站缩略标志链接是指网站域名+‘/favicon.ico'链接。
10.根据权利要求1或8所述的URL爬取方法,其特征在于,根据关键字字典,对第二数据库中的URL进行分类;所述关键字字典包括URL类型与URL中关键字的映射关系表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安交大捷普网络科技有限公司,未经西安交大捷普网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911323361.9/1.html,转载请声明来源钻瓜专利网。