一种网站数据抓取装置及方法制造方法及图纸

技术编号:5459529 阅读:303 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种网站数据抓取装置及方法,该方法包括:获取多条爬虫日志,以形成日志文件;以站点名称为基准将日志文件合并到合并日志文件;以IP地址为基准对合并日志文件进行倒排处理,以获取倒排日志文件;对倒排日志文件中每一IP地址下的站点名称进行应用策略计算,以获取多个以优先级别排列的待抓取站点名称以及对应的待抓取IP地址,形成待抓取列表。通过上述方式,可更合理并且快速的调度抓取网站数据,使得在有限的资源下尽可能地使搜索引擎所抓取的网站数据能够保持较高的更新水平。

【技术实现步骤摘要】

本专利技术涉及网络技术,特别涉及。
技术介绍
搜索引擎主要利用爬虫对网站的相关内容进行抓取,而每个网站可以通过设置网 站访问配置文件来对网站的相关内容进行访问规则设置,以规定爬虫可以访问哪些网站内容。由于网站内容对于搜索引擎来说是非常重要的,而所有的搜索引擎都必须遵守网 站的爬虫抓取协议,来友好的抓取网站的相关内容。搜索引擎对网站访问配置文件的抓取 和对普通网页的抓取都存在着相同的技术问题,其具体表现为抓取能力和更新及时性的矛 盾一方面,不管是目标网站的IP流量还是搜索引擎本身的抓取流量都是有限的资源,另 一方面,如果网站的网站访问配置文件改变了而搜索引擎没有更新,搜索引擎会根据旧的 网站访问配置文件来抓取网站的相关内容,此举则会被指为不遵守爬虫抓取协议而被站长 指责。同样,在抓取其他网站数据(例如网站首页)时同样会遇到类似问题。
技术实现思路
本专利技术提供了,以更合理并且快速的调度抓取网站 数据,使得在有限的资源下尽可能地使搜索引擎所抓取的网站数据能够保持较高的更新水 平。具体方案如下提供一种网站数据抓取方法,包括a.获取多条爬虫日志,以形成 日志文件,其中所述每一爬虫日志包括相互关联的站点名称、IP地址、网站数据以及抓取时 间;b.以所述站点名称为基准将所述日志文件合并到合并日志文件中,在所述合并日志文 件中,每一所述站点名称下关联有一个或多个在所述爬虫日志中与所述站点名称相关联的 IP地址,每一所述站点名称下进一步关联有在所述爬虫日志中与所述站点名称相关联的抓 取时间和网站数据;C.以所述IP地址为基准对所述合并日志文件进行倒排处理,以获取倒 排日志文件,在所述倒排日志文件中,每一所述IP地址下关联有一个或多个在所述合并日 志文件中与所述IP地址相关联的站点名称,每一所述站点名称进一步关联有在所述合并 日志文件中与所述站点名称相关联的抓取时间和网站数据;d.对所述倒排日志文件中每 一所述IP地址下的站点名称进行应用策略计算,以获取多个以优先级别排列的待抓取站 点名称以及对应的待抓取IP地址,形成待抓取列表。根据本专利技术之一优选实施例,步骤a进一步包括分别根据多个待抓取站点名称 及对应的待抓取IP地址获取多个网站数据,分别记录所述待抓取站点名称、所述待抓取IP 地址、所述网站数据以及抓取时间,以产生多条爬虫日志。根据本专利技术之一优选实施例,步骤d进一步包括接收IP压力控制列表,其中所述 IP压力控制列表包括所述待抓取IP地址和所述待抓取IP地址所能承受的预定抓取周期内 的最大抓取次数,根据所述IP压力控制列表控制在所述预定抓取周期内所述待抓取IP地址在所述待抓取列表中的出现次数等于或小于所述最大抓取次数。根据本专利技术之一优选实施例,应用策略为计算站点权值策略,所述步骤d进一步 包括计算所述倒排日志文件中每一所述IP地址下的站点名称的站点权值,根据所述站点 权值获取所述待抓取站点名称。根据本专利技术之一优选实施例,应用策略为按最近抓取时间排序策略,所述步骤d 进一步包括判断所述倒排日志文件中每一所述IP地址下的站点名称所对应的最近抓取 时间,根据所述最近抓取时间获取所述待抓取站点名称。根据本专利技术之一优选实施例,应用策略为通配站点挖掘策略,所述步骤d进一步 包括判断所述倒排日志文件中每一所述IP地址下的站点名称是否存在位于同一主域下 的站点名称,且位于同一主域下的站点名称的网站数据是否一致,若判断到存在位于同一 主域下的站点名称且网站数据一致时,只将在同一主域下的站点名称中的部分站点名称作 为待抓取站点名称。根据本专利技术之一优选实施例,步骤d进一步包括将位于同一主域下的站点名称 中的部分站点名称作为待抓取站点名称进行网站数据抓取,并将抓取到的网站数据作为同 一主域下的所有站点名称所对应的网站数据。根据本专利技术之一优选实施例,步骤a进一步包括分别将所述多条爬虫日志中的所 述站点名称发送至域名解析服务器,以从所述域名解析服务器获取对应的补充IP地址,所 述步骤b进一步包括所述补充IP地址补充到所述合并日志文件。根据本专利技术之一优选实施例,步骤b进一步包括对所述日志文件以及所述合并 日志文件进行切割,以获得多个子集,分别将所述多个子集分派至分布式处理系统的各分 布式子系统并以所述站点名称为基准进行并行合并处理,以获取多个子合并日志文件,并 以所述站点名称为基准对所述多个子合并日志文件进行合并处理。根据本专利技术之一优选实施例,步骤c进一步包括对所述合并日志文件进行切割, 以获得多个子集,分别将所述多个子集分派至分布式处理系统的各分布式子系统并以所述 IP地址为基准进行并行倒排处理,以获取多个子倒排日志文件,并以所述IP地址为基准对 所述多个子倒排日志文件进行合并处理。根据本专利技术之一优选实施例,网站数据为网站访问配置文件。根据本专利技术之一优选实施例,网站数据为网站首页。本专利技术进一步提供一种网站数据抓取装置,包括抓取模块,获取多条爬虫日志, 以形成日志文件,其中所述每一爬虫日志包括相互关联的站点名称、IP地址、网站数据以及 抓取时间;分析模块,所述分析模块包括合并模块,用于以所述站点名称为基准将所述日 志文件合并到合并日志文件中,在所述合并日志文件中,每一所述站点名称下关联有一个 或多个在所述爬虫日志中与所述站点名称相关联的IP地址,每一所述站点名称下进一步 关联有在所述爬虫日志中与所述站点名称相关联的抓取时间和网站数据;倒排模块,用于 以所述IP地址为基准对所述合并日志文件进行倒排处理,以获取倒排日志文件,在所述倒 排日志文件中,每一所述IP地址下关联有一个或多个在所述合并日志文件中与所述IP地 址相关联的站点名称,每一所述站点名称进一步关联有在所述合并日志文件中与所述站点 名称相关联的抓取时间和网站数据;选取模块,用于对所述倒排日志文件中每一所述IP地 址下的站点名称进行应用策略计算,以获取多个以优先级别排列的待抓取站点名称以及对应的待抓取IP地址,形成待抓取列表。根据本专利技术之一优选实施例,抓取模块进一步包括爬虫模块,用于分别根据多个 待抓取站点名称及对应的待抓取IP地址获取多个网站数据;日志记录模块,用于分别记录 所述待抓取站点名称、所述待抓取IP地址、所述网站数据以及抓取时间,以产生多条爬虫日志O根据本专利技术之一优选实施例,选取模块进一步接收IP压力控制列表,其中所述IP 压力控制列表包括所述待抓取IP地址和所述待抓取IP地址所能承受的预定抓取周期内的 最大抓取次数,所述选取模块根据所述IP压力控制列表控制在所述预定抓取周期内所述 待抓取IP地址在所述待抓取列表中的出现次数等于或小于所述最大抓取次数。根据本专利技术之一优选实施例,应用策略为计算站点权值策略,所述选取模块计算 所述倒排日志文件中每一所述IP地址下的站点名称的站点权值,根据所述站点权值获取 所述待抓取站点名称。根据本专利技术之一优选实施例,应用策略为按最近抓取时间排序策略,所述选取模 块判断所述倒排日志文件中每一所述IP地址下的站点名称所对应的最近抓取时间,根据 所述最近抓取时间获取所述待抓取站点名称。根据本专利技术之一优选实施例,应用策略为通配站点挖掘策略,所述选取模块判断 所述倒排日志文件中每一所述IP地址下的站点名称是否存在位于同一主域下的站点名 称,且位于同一本文档来自技高网...

【技术保护点】
一种网站数据抓取方法,其特征在于,包括:a.获取多条爬虫日志,以形成日志文件,其中所述每一爬虫日志包括相互关联的站点名称、IP地址、网站数据以及抓取时间;b.以所述站点名称为基准将所述日志文件合并到合并日志文件中,在所述合并日志文件中,每一所述站点名称下关联有一个或多个在所述爬虫日志中与所述站点名称相关联的IP地址,每一所述站点名称下进一步关联有在所述爬虫日志中与所述站点名称相关联的抓取时间和网站数据;c.以所述IP地址为基准对所述合并日志文件进行倒排处理,以获取倒排日志文件,在所述倒排日志文件中,每一所述IP地址下关联有一个或多个在所述合并日志文件中与所述IP地址相关联的站点名称,每一所述站点名称进一步关联有在所述合并日志文件中与所述站点名称相关联的抓取时间和网站数据;d.对所述倒排日志文件中每一所述IP地址下的站点名称进行应用策略计算,以获取多个以优先级别排列的待抓取站点名称以及对应的待抓取IP地址,形成待抓取列表。

【技术特征摘要】

【专利技术属性】
技术研发人员:赖春波
申请(专利权)人:百度在线网络技术北京有限公司
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1