CN106933827A - 论坛目录页内容解析方法和装置 - Google Patents
论坛目录页内容解析方法和装置 Download PDFInfo
- Publication number
- CN106933827A CN106933827A CN201511017222.5A CN201511017222A CN106933827A CN 106933827 A CN106933827 A CN 106933827A CN 201511017222 A CN201511017222 A CN 201511017222A CN 106933827 A CN106933827 A CN 106933827A
- Authority
- CN
- China
- Prior art keywords
- article
- forum
- page
- time
- parsing
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开了一种论坛目录页内容解析方法和装置。其中,该方法包括:按照预设排序规则爬取论坛目录页中的文章,得到爬取结果,其中,预设排序规则用于使论坛目录页中的文章按照发表时间排序;按照预设顺序依次解析爬取结果中的文章;判断当前解析的文章的发表时间是否晚于预设时间;在判断出当前解析的文章的发表时间晚于预设时间时,继续解析爬取结果中的文章;以及在判断出当前解析的文章的发表时间不晚于预设时间时,停止解析爬取结果中的文章。本申请解决了相关技术中解析爬取到的论坛目录页内容时浪费资源的技术问题。
Description
技术领域
本申请涉及数据处理领域,具体而言,涉及一种论坛目录页内容解析方法和装置。
背景技术
通过网络爬虫来爬取互联网上的论坛数据与爬取新闻类数据具有很大的区别,新闻类数据的爬取是一次性的,而论坛数据由于不定期的有用户回复,需要进行多次爬取以此获得最新的回复数据。目前网络上论坛类网页的一个显著特点就是目录页面的缺省排序是按照文章的最后回复时间进行排序,因而网络爬虫爬取的数据并不是按照文章的发表时间排序的。当前网络爬虫在爬取论坛目录页内容时,一般是预先指定爬取规则(例如,针对有翻页的论坛目录页,指定最大翻页数),然后再利用爬取技术来逐步翻页爬取每个页面的内容,再通过解析网络爬虫爬取到的数据,依次判别其是否属于发表时间在预设时间阀值之前的数据,如果是的话则认为是旧文章并丢弃,否则保存。
由于现有技术在爬取论坛目录页的内容时,只能在网络爬虫爬完目标论坛目录页以后,通过解析爬取的内容获取文章的发表时间,然后再根据该发表时间来判断该文章是否要保存或丢弃,这样一来,网络爬虫需要爬取论坛目录页的所有文章才能判断是否要丢弃,如果丢弃的比率很高的话(例如,爬取人气不高的论坛网站,每天的更新率只有一两篇文章,为了把这一两篇文章爬取回来,需要爬取整个论坛目录页的文章),将带来极大的网络资源和带宽的浪费,而且本地解析也将耗时费力,造成资源的浪费。
针对相关技术中解析爬取到的论坛目录页内容时浪费资源的问题,目前尚未提出有效的解决方案。
发明内容
本申请的主要目的在于提供一种论坛目录页内容解析方法和装置,以解决相关技术中解析爬取到的论坛目录页内容时浪费资源的问题。
为了实现上述目的,根据本申请的一个方面,提供了一种论坛目录页内容解析方法。该方法包括:按照预设排序规则爬取论坛目录页中的文章,得到爬取结果,其中,预设排序规则用于使论坛目录页中的文章按照发表时间排序;按照预设顺序依次解析爬取结果中的文章;判断当前解析的文章的发表时间是否晚于预设时间;在判断出当前解析的文章的发表时间晚于预设时间时,继续解析爬取结果中的文章;以及在判断出当前解析的文章的发表时间不晚于预设时间时,停止解析爬取结果中的文章。
进一步地,按照预设排序规则爬取论坛目录页中的文章,得到爬取结果包括:获取论坛目录页的链接;根据论坛目录页的链接按照预设排序规则构建爬取请求,其中,根据爬取请求从服务器获取到的论坛目录页中的文章按照发表时间排序;以及根据爬取请求爬取论坛目录页中的文章,得到爬取结果。
进一步地,判断当前解析的文章的发表时间是否晚于预设时间包括:通过预设算法从当前解析的文章中解析出发表时间;以及判断发表时间是否晚于预设时间。
进一步地,在判断出当前解析的文章的发表时间晚于预设时间时,该方法还包括:解析当前解析的文章的链接;以及将当前解析的文章的链接添加至爬取队列中。
进一步地,论坛目录页包括多个爬取页面,第一爬取页面为多个爬取页面中任意一个爬取页面,按照预设排序规则爬取论坛目录页中的文章,得到爬取结果包括:按照预设排序规则爬取论坛目录页的第一爬取页面中的文章,得到爬取结果,在判断出当前解析的文章的发表时间不晚于预设时间时,该方法还包括:停止爬取位于第一爬取页面之后的爬取页面中的文章。
为了实现上述目的,根据本申请的另一方面,提供了一种论坛目录页内容解析装置。该装置包括:爬取单元,用于按照预设排序规则爬取论坛目录页中的文章,得到爬取结果,其中,预设排序规则用于使论坛目录页中的文章按照发表时间排序;第一解析单元,用于按照预设顺序依次解析爬取结果中的文章;判断单元,用于判断当前解析的文章的发表时间是否晚于预设时间;以及第二解析单元,用于在判断出当前解析的文章的发表时间晚于预设时间时,继续解析爬取结果中的文章,在判断出当前解析的文章的发表时间不晚于预设时间时,停止解析爬取结果中的文章。
进一步地,爬取单元包括:获取模块,用于获取论坛目录页的链接;构建模块,用于根据论坛目录页的链接按照预设排序规则构建爬取请求,其中,根据爬取请求从服务器获取到的论坛目录页中的文章按照发表时间排序;以及第一爬取模块,用于根据爬取请求爬取论坛目录页中的文章,得到爬取结果。
进一步地,判断单元包括:解析模块,用于通过预设算法从当前解析的文章中解析出发表时间;以及判断模块,用于判断发表时间是否晚于预设时间。
进一步地,该装置还包括:第三解析单元,用于解析当前解析的文章的链接;以及添加单元,用于将当前解析的文章的链接添加至爬取队列中。
进一步地,论坛目录页包括多个爬取页面,第一爬取页面为多个爬取页面中任意一个爬取页面,爬取单元包括:第二爬取模块,用于按照预设排序规则爬取论坛目录页的第一爬取页面中的文章,得到爬取结果,该装置还包括:停止单元,用于停止爬取位于第一爬取页面之后的爬取页面中的文章。
本申请通过按照预设排序规则爬取论坛目录页中的文章,得到爬取结果,其中,预设排序规则用于使论坛目录页中的文章按照发表时间排序;按照预设顺序依次解析爬取结果中的文章;判断当前解析的文章的发表时间是否晚于预设时间;在判断出当前解析的文章的发表时间晚于预设时间时,继续解析爬取结果中的文章;以及在判断出当前解析的文章的发表时间不晚于预设时间时,停止解析爬取结果中的文章,在本申请中根据预设排序规则爬取到的论坛目录页中的文章是按照发表时间排序的,因此一旦判断出爬取结果中某篇文章的发表时间早于预设时间,则无需继续解析爬取结果中该篇文章之后的文章,降低了本地解析对资源的占用,提高了本地解析爬取到的论坛目录页内容的效率,解决了相关技术中解析爬取到的论坛目录页内容时浪费资源的问题,进而达到了降低本地解析爬取到的论坛目录页内容时对资源的占用以及提高解析爬取到的论坛目录页内容的效率的效果。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的论坛目录页内容解析方法的流程图;以及
图2是根据本申请实施例的论坛目录页内容解析装置的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为了便于描述,以下对本申请涉及的一些概念或术语进行说明:
论坛目录页,是指论坛网站中显示用户发表的文章的目录页面。
论坛内容页,是指论坛网站中显示用户发表的文章的详细页面。
URL,即统一资源定位符,也称为链接或是超级链接,是指访问一个网站需要的地址,例如,http://www.baidu.com。
爬虫系统,是指用于执行网页内容爬取的系统,在该爬虫系统中设置有网络爬虫,其中,网络爬虫是一种按照预设规则自动抓取万维网信息的程序或者脚本。
爬取请求,包括待爬取网页的地址、Cookie等数据,网络爬虫在需要爬取某个网页内容时向服务器发送爬取请求,服务器解析爬取请求并返回对应网页的内容。
根据本申请实施例,提供了一种论坛目录页内容解析方法。图1是根据本申请实施例的论坛目录页内容解析方法的流程图,如图1所示,该方法包括如下的步骤S102至步骤S110:
步骤S102,按照预设排序规则爬取论坛目录页中的文章,得到爬取结果,其中,预设排序规则用于使论坛目录页中的文章按照发表时间排序。
本申请实施例的预设排序规则用于使论坛目录页的内容按照发表时间排序,具体地,该预设排序规则应当根据网站的特点进行设置,例如,在论坛目录页地址中增加?orderby=dateline,或是将论坛目录页地址中的.htm替换为-1-1.aspx,或是将论坛目录页的Cookie中的参数orderby_dateline置为1等。
具体地,本申请实施例可以将预设排序规则可以配置在爬虫系统中,例如,直接配置在爬虫系统的数据库中,或配置在爬虫系统相应的配置文件中等,也可以将预设排序规则配置在网络上。
优选地,按照预设排序规则爬取论坛目录页中的文章,得到爬取结果包括:获取论坛目录页的链接;根据论坛目录页的链接按照预设排序规则构建爬取请求,其中,根据爬取请求从服务器获取到的论坛目录页中的文章按照发表时间排序;以及根据爬取请求爬取论坛目录页中的文章,得到爬取结果。
例如,预设排序规则为在论坛目录页的链接中增加?orderby=dateline,网络爬虫在获取到论坛目录页的链接后在该链接中增加?orderby=dateline,得到新的链接,例如,某个论坛目录页的链接为http://bbs.xxx.com/forum-23432-1.html,增加?orderby=dateline后得到的新的链接为http://bbs.xxx.com/forum-23432-1.html?orderby=dateline,并根据该新的链接创建爬取请求发送给网站服务器,网站服务器对该爬取请求进行解析,并根据新的链接中的orderby=dateline将该论坛目录页对应的文章按照发表时间排序后返回给网络爬虫,从而网络爬虫接收到的论坛目录页的文章为按照发表时间排序的,即网络爬虫爬取到的论坛目录页的文章为按照发表时间排序的。
需要说明的是,预设排序规则也可以是在论坛目录页地址中增加?orderby=dateline,或是将论坛目录页地址中的.htm替换为-1-1.aspx等,具体实现论坛目录页的文章按照发表时间排序的过程同上,在此不再赘述。
步骤S104,按照预设顺序依次解析爬取结果中的文章。
由于通过步骤S102爬取到的论坛目录页中的文章为按照发表时间排序的,本申请实施例可以按照从上往下的顺序依次解析爬取结果中的文章。
步骤S106,判断当前解析的文章的发表时间是否晚于预设时间。
可选地,判断当前解析的文章的发表时间是否晚于预设时间包括:通过预设算法从当前解析的文章中解析出发表时间;以及判断发表时间是否晚于预设时间。
本申请实施例的预设算法可以是任意解析出文章的发表时间的算法,可选地,预设算法可以是正则匹配算法、XPath算法等,其中,XPath算法是指可扩展标记语言(Extensible Markup Language,简称为XML)路径语言,它是一种用来确定XML(即标准通用标记语言的子集)文档中某部分位置的语言,XPath算法基于XML的树状结构,提供在数据结构树中找寻节点的能力。
在解析出文章的发表时间之后,即可以将该发表时间与预设时间进行比较以判断是否需要爬取该文章对应的论坛内容页。
步骤S108,在判断出当前解析的文章的发表时间晚于预设时间时,继续解析爬取结果中的文章。
在判断出当前解析的文章的发表时间晚于预设时间时,说明爬取结果中位于当前解析的文章之后的文章可能还是需要爬取的内容,因此,继续解析爬取结果中后续的文章。
可选地,在判断出当前解析的文章的发表时间晚于预设时间时,该方法还包括:解析当前解析的文章的链接;以及将当前解析的文章的链接添加至爬取队列中。
本申请实施例在判断出当前解析的文章的发表时间晚于预设时间时,解析当前解析的文章的链接,当前解析的文章的链接即指该文章对应的论坛内容页的链接,并将其链接添加至爬取队列中以供爬虫后续爬取。
例如,爬取结果中包括20篇按照发表时间排序的文章,按照从上到下的顺序依次解析这20篇文章,假设当前解析的文章为第10篇文章A10,首先解析文章A10的发表时间T10,并将该发表时间T10与预设时间T比较,如果发表时间T10不晚于预设时间T,则停止解析爬取结果中后续的文章,即第11篇文章至第20篇文章;如果发表时间T10晚于预设时间T,则解析文章A10的链接,即文章A10对应的论坛内容页的链接,并添加至爬取队列中,同时,继续解析第11篇文章A11,以此类推,直至某篇文章的发表时间不晚于预设时间T。
步骤S110,在判断出当前解析的文章的发表时间不晚于预设时间时,停止解析爬取结果中的文章。
由于爬取结果中的文章是按照发表时间进行排序的,因此在判断出当前解析的文章的发表时间不晚于预设时间时,则说明该篇文章之后的文章均为不需要爬取的文章。从而可以直接停止解析爬取结果中剩余的文章。
本申请实施例通过按照预设排序规则爬取论坛目录页中的文章,得到爬取结果,其中,预设排序规则用于使论坛目录页中的文章按照发表时间排序;按照预设顺序依次解析爬取结果中的文章;判断当前解析的文章的发表时间是否晚于预设时间;在判断出当前解析的文章的发表时间晚于预设时间时,继续解析爬取结果中的文章;以及在判断出当前解析的文章的发表时间不晚于预设时间时,停止解析爬取结果中的文章,在本申请实施例中根据预设排序规则爬取到的论坛目录页中的文章是按照发表时间排序的,因此一旦判断出爬取结果中某篇文章的发表时间早于预设时间,则无需继续解析爬取结果中该篇文章之后的文章,降低了本地解析对资源的占用,提高了本地解析爬取到的论坛目录页内容的效率,解决了相关技术中解析爬取到的论坛目录页内容时浪费资源的问题,进而达到了降低本地解析爬取到的论坛目录页内容时对资源的占用以及提高解析爬取到的论坛目录页内容的效率的效果。
优选地,论坛目录页包括多个爬取页面,第一爬取页面为多个爬取页面中任意一个爬取页面,按照预设排序规则爬取论坛目录页中的文章,得到爬取结果包括:按照预设排序规则爬取论坛目录页的第一爬取页面中的文章,得到爬取结果,在判断出当前解析的文章的发表时间不晚于预设时间时,该方法还包括:停止爬取位于第一爬取页面之后的爬取页面中的文章。
实际情况中,论坛目录页通常包含多个爬取页面,每个爬取页面显示预设数量的文章目录,例如,爬取页面1用于显示第1至20条文章目录,爬取页面2用于显示第21至40条文章目录,爬取页面3用于显示第41至60条文章目录,以此类推,直至显示完当前论坛的所有的文章目录。通常,通过点击该文章目录即可以跳转至该文章目录表示的文章的详细页面,即文章的论坛内容页。
本申请实施例的第一爬取页面可以是多个爬取页面中任意一个爬取页面,以下以第一爬取页面为例对本申请实施例进行说明:网络爬虫首先爬取第一爬取页面中的文章,得到爬取结果,按照预设顺序依次解析爬取结果中每一篇文章的发表时间,并与预设时间比较,如果某篇文章的发表时间不晚于预设值,则不再解析该篇文章之后的文章,同时,网络爬虫停止爬取第一爬取页面之后的爬取页面中的文章,从而可以节省网络资源。
根据本申请又一实施例的论坛目录页内容解析方法,包括如下步骤:
步骤S202,获取目标论坛目录页的预设排序规则。
本申请实施例可以预先在爬虫系统中配置目标论坛目录页的预设排序规则,其中,预设排序规则用于使论坛目录页的内容按照发表时间排序,具体地,应当根据网站的特点进行设置,例如,可以是在论坛目录页地址中增加?orderby=dateline,或是将论坛目录页地址中的.htm替换为-1-1.aspx,或是将论坛目录页的Cookie中的参数orderby_dateline置为1等。
步骤S204,爬虫对论坛目录页按照步骤S202中配置的预设排序规则进行网络爬取,然后按照从上到下的顺序依次解析爬取结果中的文章的发表日期。
在步骤S204中,网络爬虫对论坛目录页按照步骤S202中配置的预设排序规则进行网络爬取,然后按照从上到下的顺序依次解析爬取结果中的文章的发表日期。
由于步骤S202中配置的预设排序规则用于使论坛目录页的内容按照发表时间排序,所以在步骤S204中爬取的数据必定是按照文章的发表时间排序的,即最新的文章排列在前面。具体地,网络爬虫可以采用某个预设算法,例如,正则匹配算法、XPath算法等依次解析爬取结果中各个文章的发表时间。
步骤S206,如果步骤S204解析出来的某篇文章的发表时间在爬虫系统预先定义的时间阀值内,则执行步骤S208,否则本次爬取结束。
具体地,时间阀值即预设时间,在步骤S206中,如果步骤S204解析出来的某篇文章的发表时间在爬虫系统预先定义的时间阀值内,则执行步骤S208,否则本次爬取结束,即解析出来的某篇文章的发表时间在爬虫系统预先定义的时间阀值之外时,停止解析该篇文章之后的文章,同时停止爬取论坛目录页剩余爬取页面中的内容。
例如,爬虫系统预先定义仅爬取3天以内的论坛数据,如果当前解析的文章的发表时间是在1天以前,则说明该文章是在时间阀值以内,应该继续进入步骤S208进行后继爬取;相反,如果当前解析的文章的发表时间超过了3天,则表明该文章不在系统规定的时间阀值内,属于不需爬取的文章。此外,由于步骤S202中已经定义了论坛目录页的内容的预设排序规则是按照发表时间排序,则说明当前解析的文章以后的所有文章也属于超过时间阀值的文章,不应该继续爬取,所以应该终止本次爬取。
步骤S208,解析该篇文章的URL,并添加到爬取队列中,并继续执行步骤S206。
在步骤S208中,如果在步骤S206中确定某篇文章的发表时间在时间阀值内,则应该解析该篇文章对应的URL(具体指该篇文章的论坛目录页的URL),并添加到爬取队列中作为后续的爬取对象,而本次爬取过程则返回到步骤S206,继续处理爬取结果中的其他文章。
需要说明的是,目前网络上的常见论坛目录页的缺省排序均为按照最后回复时间进行排序,这就意味着一篇发表在数年前或者数月前的文章仅仅是由于刚刚被回复了就能排到论坛目录页的前面,因此,本申请通过配置论坛目录页的排序规则,使得爬取结果是按照文章发表时间排序,并依次解析爬取结果中每篇文章的发表时间,一旦发现某文章超出预设的时间阈值,则终止继续解析爬取结果中的其它文章。
从以上的描述中,可以看出,本申请通过先对论坛目录页的文章按照发表时间排序后来判断论坛目录页中的文章是否需要爬取,具体地,通过配置目标论坛的论坛目录页的预设排序规则,在网络爬虫爬取论坛目录页时自动添加该预设排序规则,这样网络爬虫爬取回来的论坛目录页就是按照文章发表时间排序的,最新发表的文章排在最前面,网络爬虫只需依次解析爬回数据中每篇文章的发表时间,如果发表时间在允许的时间阀值内,则添加该文章的链接到爬取队列中,如果发表时间超过了允许的时间阀值,则无须爬取该文章(具体指爬取该文章的论坛内容页),直接丢弃即可。此外,由于该论坛目录页面是已经按照文章发表时间排序的,所以也即表明该文章之后的文章的发表时间也必定超过允许的时间阀值,则网络爬虫可以直接跳过后面的所有文章爬取,达到快速判断的目的,以此节约网络资源,提高爬虫效率。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
根据本申请实施例的另一方面,提供了一种论坛目录页内容解析装置,该论坛目录页内容解析装置可以用于执行本申请实施例的论坛目录页内容解析方法,本申请实施例的论坛目录页内容解析方法也可以通过本申请实施例的论坛目录页内容解析装置来执行。
图2是根据本申请实施例的论坛目录页内容解析装置的示意图,如图2所示,该装置包括:爬取单元10、第一解析单元20、判断单元30和第二解析单元40。
爬取单元10,用于按照预设排序规则爬取论坛目录页中的文章,得到爬取结果,其中,预设排序规则用于使论坛目录页中的文章按照发表时间排序。
可选地,爬取单元10包括:获取模块,用于获取论坛目录页的链接;构建模块,用于根据论坛目录页的链接按照预设排序规则构建爬取请求,其中,根据爬取请求从服务器获取到的论坛目录页中的文章按照发表时间排序;以及第一爬取模块,用于根据爬取请求爬取论坛目录页中的文章,得到爬取结果。
第一解析单元20,用于按照预设顺序依次解析爬取结果中的文章。
判断单元30,用于判断当前解析的文章的发表时间是否晚于预设时间。
可选地,判断单元30包括:解析模块,用于通过预设算法从当前解析的文章中解析出发表时间;以及判断模块,用于判断发表时间是否晚于预设时间。
第二解析单元40,用于在判断出当前解析的文章的发表时间晚于预设时间时,继续解析爬取结果中的文章,在判断出当前解析的文章的发表时间不晚于预设时间时,停止解析爬取结果中的文章。
本申请实施例通过第一解析单元20按照预设排序规则爬取论坛目录页中的文章,得到爬取结果,其中,预设排序规则用于使论坛目录页中的文章按照发表时间排序;按照预设顺序依次解析爬取结果中的文章;判断单元30判断当前解析的文章的发表时间是否晚于预设时间;以及第二解析单元40在判断出当前解析的文章的发表时间晚于预设时间时,继续解析爬取结果中的文章,在判断出当前解析的文章的发表时间不晚于预设时间时,停止解析爬取结果中的文章,在本申请实施例中根据预设排序规则爬取到的论坛目录页中的文章是按照发表时间排序的,因此一旦判断出爬取结果中某篇文章的发表时间早于预设时间,则无需继续解析爬取结果中该篇文章之后的文章,降低了本地解析对资源的占用,提高了本地解析爬取到的论坛目录页内容的效率,解决了相关技术中解析爬取到的论坛目录页内容时浪费资源的问题,进而达到了降低本地解析爬取到的论坛目录页内容时对资源的占用以及提高解析爬取到的论坛目录页内容的效率的效果。
可选地,该装置还包括:第三解析单元,用于解析当前解析的文章的链接;以及添加单元,用于将当前解析的文章的链接添加至爬取队列中。
可选地,论坛目录页包括多个爬取页面,第一爬取页面为多个爬取页面中任意一个爬取页面,爬取单元10包括:第二爬取模块,用于按照预设排序规则爬取论坛目录页的第一爬取页面中的文章,得到爬取结果,该装置还包括:停止单元,用于停止爬取位于第一爬取页面之后的爬取页面中的文章。
所述论坛目录页内容解析装置包括处理器和存储器,上述爬取单元、第一解析单元、判断单元和第二解析单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来解析论坛目录页中的内容。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:按照预设排序规则爬取论坛目录页中的文章,得到爬取结果,其中,预设排序规则用于使论坛目录页中的文章按照发表时间排序;按照预设顺序依次解析爬取结果中的文章;判断当前解析的文章的发表时间是否晚于预设时间;在判断出当前解析的文章的发表时间晚于预设时间时,继续解析爬取结果中的文章;以及在判断出当前解析的文章的发表时间不晚于预设时间时,停止解析爬取结果中的文章。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种论坛目录页内容解析方法,其特征在于,包括:
按照预设排序规则爬取论坛目录页中的文章,得到爬取结果,其中,所述预设排序规则用于使所述论坛目录页中的文章按照发表时间排序;
按照预设顺序依次解析所述爬取结果中的文章;
判断当前解析的文章的发表时间是否晚于预设时间;
在判断出所述当前解析的文章的发表时间晚于所述预设时间时,继续解析所述爬取结果中的文章;以及
在判断出所述当前解析的文章的发表时间不晚于所述预设时间时,停止解析所述爬取结果中的文章。
2.根据权利要求1所述的方法,其特征在于,按照预设排序规则爬取论坛目录页中的文章,得到爬取结果包括:
获取所述论坛目录页的链接;
根据所述论坛目录页的链接按照所述预设排序规则构建爬取请求,其中,根据所述爬取请求从服务器获取到的论坛目录页中的文章按照发表时间排序;以及
根据所述爬取请求爬取所述论坛目录页中的文章,得到所述爬取结果。
3.根据权利要求1所述的方法,其特征在于,判断当前解析的文章的发表时间是否晚于预设时间包括:
通过预设算法从所述当前解析的文章中解析出所述发表时间;以及
判断所述发表时间是否晚于所述预设时间。
4.根据权利要求1所述的方法,其特征在于,在判断出所述当前解析的文章的发表时间晚于所述预设时间时,所述方法还包括:
解析所述当前解析的文章的链接;以及
将所述当前解析的文章的链接添加至爬取队列中。
5.根据权利要求1所述的方法,其特征在于,所述论坛目录页包括多个爬取页面,第一爬取页面为所述多个爬取页面中任意一个爬取页面,
按照预设排序规则爬取论坛目录页中的文章,得到爬取结果包括:按照所述预设排序规则爬取论坛目录页的第一爬取页面中的文章,得到所述爬取结果,
在判断出所述当前解析的文章的发表时间不晚于所述预设时间时,所述方法还包括:停止爬取位于所述第一爬取页面之后的爬取页面中的文章。
6.一种论坛目录页内容解析装置,其特征在于,包括:
爬取单元,用于按照预设排序规则爬取论坛目录页中的文章,得到爬取结果,其中,所述预设排序规则用于使所述论坛目录页中的文章按照发表时间排序;
第一解析单元,用于按照预设顺序依次解析所述爬取结果中的文章;
判断单元,用于判断当前解析的文章的发表时间是否晚于预设时间;以及
第二解析单元,用于在判断出所述当前解析的文章的发表时间晚于所述预设时间时,继续解析所述爬取结果中的文章,在判断出所述当前解析的文章的发表时间不晚于所述预设时间时,停止解析所述爬取结果中的文章。
7.根据权利要求6所述的装置,其特征在于,所述爬取单元包括:
获取模块,用于获取所述论坛目录页的链接;
构建模块,用于根据所述论坛目录页的链接按照所述预设排序规则构建爬取请求,其中,根据所述爬取请求从服务器获取到的论坛目录页中的文章按照发表时间排序;以及
第一爬取模块,用于根据所述爬取请求爬取所述论坛目录页中的文章,得到所述爬取结果。
8.根据权利要求6所述的装置,其特征在于,所述判断单元包括:
解析模块,用于通过预设算法从所述当前解析的文章中解析出所述发表时间;以及
判断模块,用于判断所述发表时间是否晚于所述预设时间。
9.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第三解析单元,用于解析所述当前解析的文章的链接;以及
添加单元,用于将所述当前解析的文章的链接添加至爬取队列中。
10.根据权利要求6所述的装置,其特征在于,所述论坛目录页包括多个爬取页面,第一爬取页面为所述多个爬取页面中任意一个爬取页面,
所述爬取单元包括:第二爬取模块,用于按照所述预设排序规则爬取论坛目录页的第一爬取页面中的文章,得到所述爬取结果,
所述装置还包括:停止单元,用于停止爬取位于所述第一爬取页面之后的爬取页面中的文章。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511017222.5A CN106933827A (zh) | 2015-12-29 | 2015-12-29 | 论坛目录页内容解析方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511017222.5A CN106933827A (zh) | 2015-12-29 | 2015-12-29 | 论坛目录页内容解析方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106933827A true CN106933827A (zh) | 2017-07-07 |
Family
ID=59441559
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201511017222.5A Pending CN106933827A (zh) | 2015-12-29 | 2015-12-29 | 论坛目录页内容解析方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106933827A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102799587A (zh) * | 2011-05-25 | 2012-11-28 | 腾讯科技(深圳)有限公司 | 一种论坛搜索方法和装置 |
CN103226568A (zh) * | 2013-03-12 | 2013-07-31 | 北京百度网讯科技有限公司 | 一种用于爬取页面的方法和设备 |
US20140095521A1 (en) * | 2012-10-01 | 2014-04-03 | DISCERN, Inc. | Data augmentation |
CN104008190A (zh) * | 2014-06-12 | 2014-08-27 | 南京博识信息技术有限公司 | 一种爬虫系统及其方法 |
CN104268148A (zh) * | 2014-08-27 | 2015-01-07 | 中国科学院计算技术研究所 | 一种基于时间串的论坛页面信息自动抽取方法及系统 |
-
2015
- 2015-12-29 CN CN201511017222.5A patent/CN106933827A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102799587A (zh) * | 2011-05-25 | 2012-11-28 | 腾讯科技(深圳)有限公司 | 一种论坛搜索方法和装置 |
US20140095521A1 (en) * | 2012-10-01 | 2014-04-03 | DISCERN, Inc. | Data augmentation |
CN103226568A (zh) * | 2013-03-12 | 2013-07-31 | 北京百度网讯科技有限公司 | 一种用于爬取页面的方法和设备 |
CN104008190A (zh) * | 2014-06-12 | 2014-08-27 | 南京博识信息技术有限公司 | 一种爬虫系统及其方法 |
CN104268148A (zh) * | 2014-08-27 | 2015-01-07 | 中国科学院计算技术研究所 | 一种基于时间串的论坛页面信息自动抽取方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10423664B2 (en) | Method and system for providing recommended terms | |
US9978093B2 (en) | Method and system for pushing mobile application | |
CN105608134B (zh) | 一种基于多线程的网络爬虫系统及其网页爬取方法 | |
US20170329856A1 (en) | Method and device for selecting data content to be pushed to terminal, and non-transitory computer storage medium | |
CN103605738B (zh) | 网页访问数据统计方法及装置 | |
CN102354315B (zh) | 一种网址导航页面生成方法和装置 | |
CN106708841B (zh) | 网站访问路径的聚合方法和装置 | |
CN105069099B (zh) | 一种信息推荐方法及系统 | |
US20070038646A1 (en) | Ranking blog content | |
CN104504086B (zh) | 网页页面的聚类方法和装置 | |
CN109670101B (zh) | 爬虫调度方法、装置、电子设备及存储介质 | |
CN108090091A (zh) | 网页爬取方法和装置 | |
US20130275577A1 (en) | Selecting Content Within a Web Page | |
CN102870118B (zh) | 用户行为的获取方法、设备及系统 | |
US20120166412A1 (en) | Super-clustering for efficient information extraction | |
CN106936778A (zh) | 网站流量异常的检测方法和装置 | |
CN102185830B (zh) | 一种网络电视浏览器安全过滤的方法及系统 | |
CN111090797A (zh) | 数据获取方法、装置、计算机设备和存储介质 | |
CN109819002B (zh) | 数据推送方法和装置、存储介质及电子装置 | |
CN103093377A (zh) | 一种广告投放方法和系统 | |
CN107436940A (zh) | 基于用户信息行为分析的web前端动态展示数据的方法 | |
CN106649385B (zh) | 基于HBase数据库的数据排序方法和装置 | |
CN110531909A (zh) | 一种基于行为分析的简洁菜单方法、平台及存储介质 | |
CN104361121B (zh) | 一种web报表系统公式的批量解析方法 | |
CN106933903A (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 | ||
CB02 | Change of applicant information |
Address after: 100083 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing Applicant after: Beijing Guoshuang Technology Co.,Ltd. Address before: 100086 Cuigong Hotel, 76 Zhichun Road, Shuangyushu District, Haidian District, Beijing Applicant before: Beijing Guoshuang Technology Co.,Ltd. |
|
CB02 | Change of applicant information | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170707 |
|
RJ01 | Rejection of invention patent application after publication |