主权项 |
一种爬虫系统的方法,其特征在于,步骤如下:步骤1:启动爬虫节点(2)中的用于动态网页的爬虫系统(1)进行数据采集并把数据采集结果存储到用于采集结果的数据库(6)中,并对每个网站服务器(4)中的网站及频道进行统一编码,每个网站的每个频道都存在唯一标识;步骤2:用于动态网页的爬虫系统(1)再从频道库中提取一个频道的起始URL及该频道信息的最近爬取时频道信息的最后发布日期,并将该频道信息的最近爬取时频道信息的最后发布日期减去一天;步骤3:用于动态网页的爬虫系统(1)对该频道所在的网站服务器(4)发起Http请求;步骤4:该频道所在的网站服务器(4)接收到该Http请求后,把该频道列表信息发送回爬虫节点(2),用于动态网页的爬虫系统(1)就取得该频道列表信息;步骤5:用于动态网页的爬虫系统(1)对该频道列表信息进行分析,如果对应的发布日期条目中存在发布日期,则直接使用该频道列表信息的每条信息的发布日期与该频道的减去一天后的最后发布日期比较,如果晚于最后发布日期,则将该URL信息加入到任务信息中;步骤6:如果本页列表中最后一条信息不早于最后发布日期,用于动态网页的爬虫系统(1)则对该频道所在的网站服务器(4)发起针对下一页的http请求,返回步骤4中执行;步骤7:如果本页列表中最后一条信息早于该频道的减去一天后的最后发布日期,则该爬虫任务结束;步骤8:如果该频道列表信息不存在发布日期这样能够绝对定位的标识,用于动态网页的爬虫系统(1)则分析确定该频道列表信息的条目数N,以及该频道列表信息中的每个条目的标题信息,以此形成标题集合{title0,title1, title2…titltN},其中title表示标题信息,然后从用于采集结果的数据库(6)中按照采集时间顺序查找title0及后续N条数据标题的数据库集合{title0 db,title1 db, title2 db…titltN db},如果标题集合和数据库集合这两个集合的散列值相同,则结束爬取任务;如果标题集合和数据库集合这两个集合的散列值不同,则用于动态网页的爬虫系统(1)则对该频道所在的网站服务器(4)发起针对下一页的http请求,返回步骤4中执行。 |