[发明专利]基于Scrapy的网站URL爬取方法在审
申请号: | 201911323361.9 | 申请日: | 2019-12-20 |
公开(公告)号: | CN111125485A | 公开(公告)日: | 2020-05-08 |
发明(设计)人: | 何建锋;袁莺;马昱阳 | 申请(专利权)人: | 西安交大捷普网络科技有限公司 |
主分类号: | G06F16/951 | 分类号: | G06F16/951;G06F16/955;G06F16/958 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 710075 陕西省*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 scrapy 网站 url 方法 | ||
本发明公开一种基于Scrapy的网站URL爬取方法,包括:从第一数据库读取目标URL,请求目标URL并下载其网页;从网页中提取出所有URL,并进行布隆去重;将去重后的URL同时存入第一数据库与第二数据库;从第一数据库读取同域名的URL进行去重并保存,对去重后的URL构造http请求并再次爬取。减少低效爬取占用资源,有利于提高整体效率。
技术领域
本发明属于计算机与网络技术领域,尤其是涉及一种基于Scrapy的网站URL爬取方法。
背景技术
随着信息技术的日新月异和网络信息系统应用的发展。以互联网为代表的信息技术革命冲击和改变着社会生活和生产的各个领域,员工上班时间从事与工作无关的网络娱乐活动导致工作效率低下,据统计,企业员工平均每天在互联网活动中有将近37%是用来在线聊天,浏览新闻娱乐,股票行情,色情网站或处理个人事物,这种互联网的不合理使用必然导致员工工作效率的下降,同时员工也养成了不良的职业习惯,企业文化受到损害。
信息审计系统的功能之一就是运用各种技术手段实时监控网络环境中的网络行为、通信内容,以便集中采集、记录、分析、告警和处理的一种技术手段。该系统的核心之一就是要经过大量的网站数据分析,能对URL快速的进行分类识别,实现对网页浏览的行为特征标定,从而实现审计的目的,因此如何高效的爬取网站的URL称为技术关键。
发明内容
有鉴于此,提出一种基于Scrapy的网站URL爬取方法,该方法主要基于利用Python实现的Scrapy框架,进行改进,实现了对网站URL快速爬取并且占用内存较低。
基于Scrapy的网站URL爬取方法,包括:
S1.从第一数据库读取目标URL,请求目标URL并下载其网页;
S2.从网页中提取出所有URL,并进行布隆去重;
S3.将去重后的URL同时存入第一数据库与第二数据库;
S4.从第一数据库读取同域名的URL进行去重并保存,对去重后的URL构造http请求并再次爬取,返回步骤S1。
S14中,当触发URL的停止爬取条件时,从第一数据库读取新的目标URL开始爬取。
优选的,所述URL的停止爬取条件包括:当URL的DNS查询超时,和/或,网页的下载超时,停止当前URL的爬取,读取下一目标URL;最近N时长内至少产生M个新URL;当最近N时长内,URL网页内的新增URL未达到M个,则停止爬取,读取下一目标URl。
进一步的,步骤S14中,设置至少两个爬取进程,每个爬取进程分别爬取一个域名下的网页,每个爬取进程设置对应的待爬取URL队列。
当触发URL的爬取停止条件时,清空当前爬取进程的URL队列。
作为优选的,网页内URL的提取使用XPath;第一数据库为Redis数据库,待爬取URL以分布式消息队列形式进行存储;第二数据库为Mysql数据库,存储已爬取待分析的URL;S14中所述的同域名URL去重,利用Python的Set容器实现。
上述的URL爬取方法,还包括提取网站缩略标志:
S51.从第二数据库读取待分析的URL,下载网页;
S52.从网页中提取出网站标题与所有链接,对所述链接按关键字进行过滤,得到图片链接与网站缩略标志链接;
S53.对所述链接进行去重后发送http请求,判断网站缩略标志文件是否下载成功:
若下载成功则按配置要求进行裁剪后保存图片文件,
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安交大捷普网络科技有限公司,未经西安交大捷普网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911323361.9/2.html,转载请声明来源钻瓜专利网。