CN109271576A - 一种基于新闻列表实时抓取方法 - Google Patents
一种基于新闻列表实时抓取方法 Download PDFInfo
- Publication number
- CN109271576A CN109271576A CN201810991700.XA CN201810991700A CN109271576A CN 109271576 A CN109271576 A CN 109271576A CN 201810991700 A CN201810991700 A CN 201810991700A CN 109271576 A CN109271576 A CN 109271576A
- Authority
- CN
- China
- Prior art keywords
- data
- real
- grasping means
- address
- news list
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种基于新闻列表实时抓取方法,包括以下步骤,输入新闻列表页地址;读取、访问网页数据;获取地址列表;分别在数据库和缓存中进行存储;从缓存中读取地址,通过数据库判断子地址数量;抓取网站地址中的内文本内容;将抓取的文本内容进行存储,通过在原有爬虫技术的基础上加入缓存技术,可以避免网站列表的重复抓取,也可以在较短的时间内获取最新的新闻列表数据。
Description
技术领域
本发明涉及一种基于新闻列表实时抓取方法。
背景技术
网络爬虫是一种自动搜集互联网信息的程序。通过网络爬虫不仅能够为搜索引擎采集网络信息,而且可以作为定向信息采集器,定向采集某些网站下的特定信息。
目前,传统意义上的爬虫无法保证数据的实时抓取,在抓取时,会产生重复抓取,延长搜索时间,降低了数据检索的效率。
发明内容
针对以上不足,本发明所要解决的技术问题是提供一种基于新闻列表的实时抓取方法,用于提高网页的检索效率。
为解决以上技术问题,本发明采用的技术方案是,
一种基于新闻列表实时抓取方法,包括以下步骤,
(1)输入新闻列表页地址;
(2)读取、访问网页数据;
(3)获取地址列表;
(4)分别在数据库和缓存中进行存储;
(5)从缓存中读取地址,通过数据库判断子地址数量;
(6)抓取网站地址中的内文本内容;
(7)将抓取的文本内容进行存储。
在采用以上技术方案的同时,本发明还进一步采用或者组合采用了以下技术方案。
步骤(6)中对网站地址抓取完成后,将抓取的网站地址标记地址状态为已抓取,返回步骤(4)。
当步骤(5)中输出的地址数量为0时,返回步骤(2);当步骤(5)中输出的地址数量不为0时,进行步骤(6)。
该抓取方法还包括数据更新方法和数据查询方法。
数据查询方法包括以下步骤,
数据查询方法包括以下步骤,
1)从缓存中取数据;
2)请求路由到对应的内存队列,并交给队列进行处理;
3)判断能否从缓存中取到数据;
4)若不能取到数据,则从数据库中查询;
5)判断数据库中是否存在该数据;
6)若存在数据,则创建强制刷新缓存请求,并加入列队中;
7)内存列队对数据进行处理;
8)若不存在数据,则将该数据挂起,不做任何处理,处于一个等待的状态;
当步骤3)中能取到对应数据时,则直接将数据发送至内存列队对数据进行处理。
数据更新方法包括以下步骤,
1)将缓存中的数据删除;
2)更新数据库中的数据。
本发明的有益效果是,通过在原有爬虫技术的基础上加入缓存技术,可以避免网站列表的重复抓取,也可以在较短的时间内获取最新的新闻列表数据。
附图说明
图1是本发明的流程图。
图2是数据查询流程图。
具体实施方式
下面结合附图对本发明进行进一步描述。
一种基于新闻列表实时抓取方法,包括以下步骤,
(1)输入新闻列表页地址;
(2)读取、访问网页数据;
(3)获取地址列表;
(4)分别在数据库和缓存中进行存储;
(5)从缓存中读取地址,通过数据库判断子地址数量,并保证数据库与缓存同步;
(6)抓取网站地址中的内文本内容;
(7)将抓取的文本内容进行存储。
步骤(6)中对网站地址抓取完成后,将抓取的网站地址标记地址状态为已抓取,返回步骤(4),进行循环从缓存数据库中读取地址进行页面抓取,当缓存数据库中的地址待抓取的状态为0时,程序请求地址列表页地址,继续获取列表子页,当获取的地址重复时程序挂起,否则继续请求。
当步骤(5)中输出的地址数量为0时,返回步骤(2);当步骤(5)中输出的地址数量不为0时,进行步骤(6)。
该抓取方法还包括数据更新方法和数据查询方法。
数据查询方法包括以下步骤,
1)从缓存中取数据;
2)请求路由到对应的内存队列,并交给队列进行处理;
3)判断能否从缓存中取到数据;
4)若不能取到数据,则从数据库中查询;
5)判断数据库中是否存在该数据;
6)若存在数据,则创建强制刷新缓存请求,并加入列队中;
7)内存列队对数据进行处理;
8)若不存在数据,则将该数据挂起,不做任何处理,处于一个等待的状态;
当步骤3)中能取到对应数据时,则直接将数据发送至内存列队对数据进行处理。
步骤6)中,如果不能从缓存取到数据,则等待20毫秒,强制刷新缓存,同步缓存与数据库间的数据,然后再次取数据,如果超过200毫秒还不能取到数据,则从数据库中取,并强制刷新缓存数据。
数据更新方法包括以下步骤,
1)将缓存中的数据删除;
2)更新数据库中的数据。
在一些优选的方式中,在进行数据查询时,每个查询对象均设有ID标志位,在查询过程中对ID标志位进行判断,若ID标志位存在,则判断ID标志位为Ture还是false,若为false则结束,进行下一个查询,若为Ture,则刷新数据库缓存;若ID标志位不存在,则直接刷新数据库缓存。
Claims (7)
1.一种基于新闻列表实时抓取方法,其特征在于,包括以下步骤,
(1)输入新闻列表页地址;
(2)读取、访问网页数据;
(3)获取地址列表;
(4)分别在数据库和缓存中进行存储;
(5)从缓存中读取地址,通过数据库判断子地址数量;
(6)抓取网站地址中的内文本内容;
(7)将抓取的文本内容进行存储。
2.根据权利要求1所述的一种基于新闻列表实时抓取方法,其特征在于,步骤(6)中对网站地址抓取完成后,将抓取的网站地址标记地址状态为已抓取,返回步骤(4)。
3.根据权利要求1所述的一种基于新闻列表实时抓取方法,其特征在于,当步骤(5)中输出的地址数量为0时,返回步骤(2);当步骤(5)中输出的地址数量不为0时,进行步骤(6)。
4.根据权利要求1所述的一种基于新闻列表实时抓取方法,其特征在于,该抓取方法还包括数据更新方法和数据查询方法。
5.根据权利要求4所述的一种基于新闻列表实时抓取方法,其特征在于,数据查询方法包括以下步骤,
1)从缓存中取数据;
2)请求路由到对应的内存队列,并交给队列进行处理;
3)判断能否从缓存中取到数据;
4)若不能取到数据,则从数据库中查询;
5)判断数据库中是否存在该数据;
6)若存在数据,则创建强制刷新缓存请求,并加入列队中;
7)内存列队对数据进行处理;
8)若不存在数据,则将该数据挂起,不做任何处理,处于一个等待的状态。
6.根据权利要求5所述的一种基于新闻列表实时抓取方法,其特征在于,当步骤3)中能取到对应数据时,则直接将数据发送至内存列队对数据进行处理。
7.根据权利要求4所述的一种基于新闻列表实时抓取方法,其特征在于,数据更新方法包括以下步骤,
1)将缓存中的数据删除;
2)更新数据库中的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810991700.XA CN109271576A (zh) | 2018-08-29 | 2018-08-29 | 一种基于新闻列表实时抓取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810991700.XA CN109271576A (zh) | 2018-08-29 | 2018-08-29 | 一种基于新闻列表实时抓取方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109271576A true CN109271576A (zh) | 2019-01-25 |
Family
ID=65154794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810991700.XA Pending CN109271576A (zh) | 2018-08-29 | 2018-08-29 | 一种基于新闻列表实时抓取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109271576A (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902735A (zh) * | 2012-09-12 | 2013-01-30 | 中兴通讯股份有限公司 | 一种交互式网络电视iptv搜索缓存方法和系统 |
CN107102997A (zh) * | 2016-02-22 | 2017-08-29 | 北京国双科技有限公司 | 数据爬取方法及装置 |
-
2018
- 2018-08-29 CN CN201810991700.XA patent/CN109271576A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902735A (zh) * | 2012-09-12 | 2013-01-30 | 中兴通讯股份有限公司 | 一种交互式网络电视iptv搜索缓存方法和系统 |
CN107102997A (zh) * | 2016-02-22 | 2017-08-29 | 北京国双科技有限公司 | 数据爬取方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102355488B (zh) | 爬虫种子获取方法与设备及爬虫爬取方法与设备 | |
CN101272407B (zh) | 域名系统的缓存探测方法、缓存探测装置和探测响应装置 | |
CN108052632B (zh) | 一种网络信息获取方法、系统及企业信息搜索系统 | |
CN103685599B (zh) | 一种域名递归服务的预判干预方法 | |
CN105550228A (zh) | 智能储物装置及基于智能储物装置的存取识别方法、系统 | |
CN106959928B (zh) | 一种基于多级缓存结构的流式数据实时处理方法及系统 | |
CN102436513A (zh) | 分布式检索方法和系统 | |
CN105721538A (zh) | 数据访问的方法和装置 | |
CN102946320B (zh) | 一种分布式用户行为日志预测网络监管方法及系统 | |
CN104331428A (zh) | 一种小文件和大文件的存储及访问方法 | |
CN102523299B (zh) | 基于消息摘要进行内容标识的缓存方法 | |
CN107580052B (zh) | 自演进的网络自适应爬虫方法及系统 | |
TWI386810B (zh) | 多處理器系統以目錄為主之資料傳輸協定 | |
CN106033428B (zh) | 统一资源定位符的选择方法和统一资源定位符的选择装置 | |
CN102063477A (zh) | 一种网站数据抓取装置及方法 | |
CN102970384A (zh) | 代理服务器和通信系统 | |
CN102932473A (zh) | 跨运营商网络访问网络内容的方法 | |
CN110365810A (zh) | 基于网络爬虫的域名缓存方法、装置、设备及存储介质 | |
CN105701233B (zh) | 一种优化服务器缓存管理的方法 | |
CN109271576A (zh) | 一种基于新闻列表实时抓取方法 | |
CN107066626A (zh) | 一种终端收藏夹文件下载存储、分类管理方法及装置 | |
CN112732431B (zh) | 一种基于云计算的人工智能系统 | |
CN109857924A (zh) | 一种大数据分析监察信息处理系统及方法 | |
CN105530329B (zh) | 一种支持名字搜索的新型域名解析服务方法和装置 | |
CN102594787A (zh) | 数据抓取方法、系统和路由服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190125 |