CN107766237A - 网络爬虫的测试方法、装置、服务器和存储介质 - Google Patents

网络爬虫的测试方法、装置、服务器和存储介质 Download PDF

Info

Publication number
CN107766237A
CN107766237A CN201710891661.1A CN201710891661A CN107766237A CN 107766237 A CN107766237 A CN 107766237A CN 201710891661 A CN201710891661 A CN 201710891661A CN 107766237 A CN107766237 A CN 107766237A
Authority
CN
China
Prior art keywords
result
test
retrieval
retrieval result
reptile
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
Application number
CN201710891661.1A
Other languages
English (en)
Inventor
谢永恒
何大鹏
火莽
火一莽
万月亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Ruian Technology Co Ltd
Original Assignee
Beijing Ruian Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Ruian Technology Co Ltd filed Critical Beijing Ruian Technology Co Ltd
Priority to CN201710891661.1A priority Critical patent/CN107766237A/zh
Publication of CN107766237A publication Critical patent/CN107766237A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请实施例公开了一种网络爬虫的测试方法、装置、服务器和存储介质,该方法包括从测试网站对应的网页文件上随机获取测试文本;调用所述测试网站的内部查询接口,根据所述测试文本进行检索,以生成第一检索结果;运行网络爬虫以得到爬取结果,并在所述爬取结果中检索所述测试文本,以生成第二检索结果;根据所述第一检索结果和所述第二检索结果生成测试结果。本申请实施例可以提高网络爬虫的测试效率。

Description

网络爬虫的测试方法、装置、服务器和存储介质
技术领域
本申请实施例涉及软件测试技术领域,尤其涉及一种网络爬虫的测试方法、装置、服务器和存储介质。
背景技术
随着网络的迅速发展,互联网成为大量信息的载体,如何有效地提取并利用这些信息成为一个巨大的挑战,搜索引擎(Search Engine),作为一个辅助人们获取各类检索信息的工具成为用户访问互联网的入口和指南。
网络爬虫是一个自动提取网页的程序,它为搜索引擎从互联网上下载网页,是搜索引擎的重要组成。传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。由于网络爬虫每天需要抓取巨量的网站,为了检测网路爬虫的抓取结果的性能,需要对网络爬虫进行测试。
常规的测试方法一般是人工对比网站的数据和网络爬虫所抓取的数据,以验证测试结果,这种测试方法非常费时,测试效率低下。
发明内容
本申请实施例提供一种网络爬虫的测试方法、装置、服务器和存储介质,以实现提高网络爬虫的测试效率的目的。
第一方面,本申请实施例提供了一种网络爬虫的测试方法,包括:
从测试网站对应的网页文件上随机获取测试文本;
调用所述测试网站的内部查询接口,根据所述测试文本进行检索,以生成第一检索结果;
运行网络爬虫以得到爬取结果,并在所述爬取结果中检索所述测试文本,以生成第二检索结果;
根据所述第一检索结果和所述第二检索结果生成测试结果。
进一步地,所述从测试网站对应的网页文件上获取测试文本之前,还包括:从爬虫种子库获取至少一个种子网站作为测试网站。
进一步地,所述运行网络爬虫以得到爬取结果,并在所述爬取结果中检索所述测试文本,以生成第二检索结果包括:
基于所述爬虫种子库运行网络爬虫,获取所述爬虫种子库中的种子网站对应的HTML格式文件;
将所述HTML格式文件转换为Velocity格式文件,并输入solr库中作为爬取结果;
在所述solr库中检索所述检测关键词,以生成第二检索结果。
进一步地,所述根据所述第一检索结果和所述第二检索结果生成测试结果,包括:
根据网址比对所述第一检索结果和所述第二检索结果;
如果所述第一检索结果中的网址和所述第二检索结果中的网址相同,则测试结果为爬虫正确;
否则测试结果为爬虫失败。
进一步地,所述根据所述第一检索结果和所述第二检索结果生成测试结果,包括:
根据的网址和网页信息比对所述第一检索结果和所述第二检索结果;
当所述第一检索结果的网址和所述第二检索结果的网址相同,以及所述第一检索结果的网页信息和所述第二检索结果的网页信息相同,则测试结果为爬虫正确;
否则测试结果为爬虫失败。
第二方面,本申请实施例还提供了一种网络爬虫的测试装置,包括:
关键词获取模块,用于从测试网站对应的网页文件上随机获取测试文本;
第一检索模块,用于调用所述测试网站的内部查询接口,根据所述测试文本进行检索,以生成第一检索结果;
第二检索模块,用于运行网络爬虫以得到爬取结果,并在所述爬取结果中检索所述测试文本,以生成第二检索结果;
结果生成模块,用于根据所述第一检索结果和所述第二检索结果生成测试结果。
进一步地,还包括:
测试获取模块,用于从爬虫种子库获取至少一个种子网站作为测试网站;
相应地,所述第二检索模块具体包括:
爬取单元,用于基于所述爬虫种子库运行网络爬虫,获取所述爬虫种子库中的种子网站对应的HTML格式文件;
爬取结果单元,用于将所述HTML格式文件转换为Velocity格式文件,并输入solr库中作为爬取结果;
爬取检索单元,用于在所述solr库中检索所述检测关键词,以生成第二检索结果。
进一步地,结果生成模块具体用于:
根据的网址和网页信息比对所述第一检索结果和所述第二检索结果;
当所述第一检索结果的网址和所述第二检索结果的网址相同,以及所述第一检索结果的网页信息和所述第二检索结果的网页信息相同,则测试结果为爬虫正确;
否则测试结果为爬虫失败。
第三方面,本申请实施例还提供了一种服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本申请任意实施例所述的网络爬虫的测试方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本申请任意实施例所述的网络爬虫的测试方法。
本申请实施例通过随机获取测试文本,并调用测试网站的内部查询接口进行查询检索得到第一检索结果;运行网络爬虫得到爬虫结果,在爬虫结果中搜索测试文本,以得到第二检索结果,通过第一检索结果和第二检索结果判断网络爬虫是否正常,得到测试结果。可以有效提高网络爬虫的测试效率。
附图说明
图1是本申请实施例一中的网络爬虫的测试方法的流程图;
图2是本申请实施例二中的网络爬虫的测试方法的流程图;
图3是本申请实施例三中的网络爬虫的测试方法的流程图;
图4是本申请实施例四中的网络爬虫的测试装置的结构示意图;
图5是本申请实施例五中的一种服务器的硬件结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。
实施例一
图1为本申请实施例一提供的网络爬虫的测试方法的流程图,该方法可以由网络爬虫的测试装置来执行,其中,该装置可以由软件和/或硬件实现,一般可以集成在服务器上,具体包括如下步骤:
步骤110、从测试网站对应的网页文件上随机获取测试文本。
其中,测试网站可以是舆情相关的新闻网站、论坛和博客网站等。
可选的,在从测试网站对应的网页文件上随机获取测试文本之前还包括从爬虫种子库中获取至少一个种子网站作为测试网站。所述爬虫种子库中包括多个种子网站,在本实施例中,种子网站包括舆情相关的新闻网站、论坛和博客网站等。
通过访问测试网站,获取测试网站对应的网页文件,并从网页文件上随机获取测试文本。
测试文本可以是测试网站对应网页文件上的测试语句,包括标题语句或者其他语句。测试文本也可以是从网页文件上提取的至少一个测试关键词。
示例性地,测试文本是从网页文件上提取的至少一个测试关键词时,从网页文件上读取文本数据,对文本数据进行分词处理得到测试关键词。所述分词处理为基于分词字典对文本数据进行匹配,采用正向迭代最细颗粒度切分算法,对文本数据从大到小层层迭代进行匹配,以提取测试关键词。
从提取到的测试关键词中随机选取至少一个测试关键词作为测试文本,采用随机选取测试关键词作为测试文本的方式,可以均衡采用不同测试关键词所产生的检索结果,能够提高网络爬虫的测试准确率。
所述基于分词字典对文本数据进行分词处理根据扫描方向不同分为正向匹配扫描和逆向匹配扫描,根据匹配长度不同分为最大匹配和最小匹配。示例性的,分词处理可以是正向最大匹配方法,正向最大匹配方法包括:从左向右截取待分割语句的N个字符作为匹配字段,根据分词字典中对匹配字段进行匹配,如果匹配成功,则将该匹配字段作为一个分割词语切分出来;如果匹配失败,则将该匹配字段的最后一个字符去除并形成新的匹配字段,并返回执行根据分词字典中对匹配字段进行匹配的操作;直到切分出所有词语为止。其中,N为分词字典中最长的字段的字符个数。
正向匹配方法对每个可能不存在于分词字典中的长串字符都要进行一次二分查找,算法复杂度太高。所以在正向匹配方法的基础上进行改进,有了邻近匹配方法。邻近匹配算法根据同一个首字符下的词条按照升序排列的规则,在通过正向匹配方法找到某一个匹配的分割词语后,在分割词语后面增加一个字符得到新的匹配字段,再进行匹配操作;由于新的匹配字段一定在前一个匹配的分割词语的后面,在分词字典中的位置不会隔得太远,所以可以加快匹配进程。
步骤120、调用所述测试网站的内部查询接口,根据所述测试文本进行检索,以生成第一检索结果。
所述第一检索结果包括通过网站的内部查询接口进行测试文本的检索,所搜索到的网址以及该网址对应的网页文件。
所述舆情相关的新闻网站、论坛和博客网站等一般都设有内部查询接口,用于查询网站内的信息。通过上述步骤获取测试文本,将该测试文本输入内部查询接口进行搜索查询,可以查询到测试网站内与该测试文本相关的信息,具体包括网址以及网址对应的网页文件。舆情网站是社会舆情在互联网空间的映射,是社会舆情的直接反应,不同的舆情网站的标题都具有唯一性;所以当测试文本是标题语句时,根据标题语句的唯一性,所查询到的第一检索结果应该是一条网址以及对应的网页文件。如果测试文本是至少一个的测试关键词,则第一检索结果可能包括一条以上的网址及其对应的网页文件。通过测试网站的查询接口检索到的第一检索结果和测试文本有着关联性。
步骤130、运行网络爬虫以得到爬取结果,并在所述爬取结果中检索所述测试文本,以生成第二检索结果。
基于爬虫种子库运行网络爬虫,网络爬虫将爬虫种子库中的种子网站对应的网页文件爬取下来,并生成爬取结果。根据上述步骤得到的测试文本,在爬取结果中进行检索,将爬取结果中与测试文本匹配的网址以及网页文件作为第二检索结果。
其中爬虫种子库包括多个种子网站,基于爬虫种子库运行网络爬虫,网络爬虫将爬虫种子库中的多个种子网站对应的网页文件爬取下来作为爬取结果。正常情况下,网络爬虫也会将测试网站对应的网页文件爬取下来,所以爬取结果中应该包括测试网站对应的网页文件,以及其他种子网站对应的网址和网页文件。
通过在上述爬取结果中进行测试文本的检索,将检索到的内容作为第二检索结果。如果网络爬虫运行正常时,爬取结果中应该会包括测试网站中与测试文本对应的网址和网页文件,即与第一检索结果相同的网址和网页文件。所以,通过在爬取结果中搜索测试文本,将爬取结果与测试文本对应的网页文件和网址作为第二检索结果,并执行下一步。
步骤140、根据所述第一检索结果和所述第二检索结果生成测试结果。
通过第一检索结果和第二检索结果进行比对以生成测试结果。可选的,可以根据所述第一检索结果中的网址和所述第二检索结果中的网址进行比对,如果第一检索结果中的网址和第二检索结果中的网址相同,则表示网络爬虫运行正常,通过测试。因为网址和网页文件具有关联性,如果第一检索结果中的网址和第二检索中的网址相同,则说明其爬取结果中包括了测试网站对应的网页文件,其中也包括了测试文本对应的网页文件。而如果第一检索结果中的网址和第二检索结果的网址不相同,则表示网络爬虫没有通过测试,其并没有将测试网站对应的所有网页文件爬取下来。
其中,调用所述测试网站的内部查询接口,根据所述测试文本进行检索,以生成第一检索结果和运行网络爬虫以得到爬取结果,并在所述爬取结果中检索所述测试文本,以生成第二检索结果的执行顺序并不限于此,运行网络爬虫以得到爬取结果,并在所述爬取结果中检索所述测试文本,以生成第二检索结果也可以在调用所述测试网站的内部查询接口,根据所述测试文本进行检索,以生成第一检索结果之前执行。遍历获取爬虫种子库中的种子网站作为测试网站逐个进行测试,完成种子库中所有种子网站的测试。
本申请实施例通过随机获取测试文本,并调用测试网站的内部查询接口进行查询检索得到第一检索结果;运行网络爬虫得到爬虫结果,在爬虫结果中搜索测试文本,以得到第二检索结果,通过第一检索结果和第二检索结果判断网络爬虫是否正常,得到测试结果,可以有效提高网络爬虫的测试效率。
实施例二
图2为本申请实施例二提供的网络爬虫的测试方法的流程图,该方法以上述实施例为基础,具体的,将所述运行网络爬虫以得到爬取结果,并在所述爬取结果中检索所述测试文本,以生成第二检索结果,具体优化为:基于爬虫种子库运行网络爬虫,获取爬虫种子库中的种子网站对应的HTML格式文件;将所述HTML格式文件转换为Velocity格式文件,并输入solr库中作为爬取结果;在solr库中检索所述检测关键词,以得到第二检索结果。
参见图2,所述网络爬虫的测试方法包括:
步骤210、从测试网站对应的网页文件上随机获取测试文本。
步骤220、调用所述测试网站的内部查询接口,根据所述测试文本进行检索,以生成第一检索结果。
步骤230、基于爬虫种子库运行网络爬虫,获取爬虫种子库中的种子网站对应的HTML格式文件。
超文本标记语言(HTML,HyperText Mark-up Language)是一种制作万维网页面的标准语言,属于标准通用标记语言下的一个应用,也是一种规范,一种标准。HTML格式文件是由HTML命令组成的描述性文本,本质是一种需要浏览器进行解释的文本,包括描述浏览器所需的信息和具体的文本内容。因此基于爬虫种子库运行网络爬虫,通过运行网络爬虫将爬虫种子库中多个种子网站对应的HTML格式文件爬取下来,能够得到爬虫种子库中的种子网站中所有文本内容。
步骤240、将所述HTML格式文件转换为Velocity格式文件,并输入solr库中作为爬取结果。
通过上述爬取下来的HTML格式文件,虽然包括了爬虫种子库中多个种子网站的所有文本内容,但是同时也包括描述浏览器所需的信息文件,如一些动作(Action)指令,所以给从HTML格式文件中提取文本内容造成了不便。因此,需要将HTML格式文件转换为Velocity格式文件。Velocity是一个基于JAVA的模板引擎技术,用于直接展示网页内容,还可以实现界面与JAVA代码的分离。将转换格式后的Velocity格式文件输入solr库中作为爬取结果。
步骤250、在solr库中检索所述检测关键词,以得到第二检索结果。
Solr是一个独立的企业级搜索应用服务器,用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。Solr库具有高效灵活的缓存功能,以及具备垂直搜索功能,可以提高检索所述测试文本的效率。
步骤260、根据所述第一检索结果和所述第二检索结果生成测试结果。
本实施例通过将所述运行网络爬虫以得到爬取结果,并在所述爬取结果中检索所述测试文本,以生成第二检索结果,具体优化为:基于爬虫种子库运行网络爬虫,获取爬虫种子库中的种子网站对应的HTML格式文件;将所述HTML格式文件转换为Velocity格式文件,并输入solr库中作为爬取结果;在solr库中检索所述检测关键词,以得到第二检索结果,可以将爬取结果中的网页信息中与文本内容无关的信息去除,并通过Solr库的搜索功能,提高了所述测试文本的检索效率。
实施例三
图3为本申请实施例三提供的网络爬虫的测试方法的流程图,该方法以上述实施例为基础,具体的,将所述根据所述第一检索结果和所述第二检索结果生成测试结果,具体优化为:根据的网址和网页信息比对所述第一检索结果和所述第二检索结果;当所述第一检索结果的网址和所述第二检索结果的网址相同,以及所述第一检索结果的网页信息和所述第二检索结果的网页信息相同,则测试结果为爬虫正确;否则测试结果为爬虫失败。
参见图3,所述网络爬虫的测试方法包括:
步骤310、从测试网站对应的网页文件上随机获取测试文本。
步骤320、调用所述测试网站的内部查询接口,根据所述测试文本进行检索,以生成第一检索结果。
步骤330、运行网络爬虫以得到爬取结果,并在所述爬取结果中检索所述测试文本,以生成第二检索结果。
步骤340、根据的网址和网页信息比对所述第一检索结果和所述第二检索结果。
步骤350、当所述第一检索结果的网址和所述第二检索结果的网址相同,以及所述第一检索结果的网页信息和所述第二检索结果的网页信息相同,则测试结果为爬虫正确;否则测试结果为爬虫失败。
如上文所述,第一检索结果和测试文本有关联性,第二检索结果和测试文本有关联性,所以第一检索结果和第二检索相同则表示网络爬虫测试通过。
所述网页信息包括网页日期、网页内容、网页编辑者和网页评论数。通过比对网页信息的网页日期、网页内容、网页编辑者和网页评论数可以很全面地确定第一检索结果中的网页和第二搜索结果中的网页是同一个。介于有些网站的网页信息可能存在转载其他网站的网页信息的情况,有一些并不一定是相同的网站也会有相同的网页信息。如果仅通过判断网页内容、网页日期或网页编辑者,可能会出现转载的网页和原始网页存在相同的网页内容、网页编辑者或网页日期的情况。如此判断出来的测试结果并不一定准确,网络爬虫的爬取结果可能并没有将第一检索结果中的网页文件爬取下来;而是将一个网页内容、网页日期或网页编辑者相同的其他网页爬取下来并生成第二检索结果。
而通过比对第一检索结果和第二检索结果的网址,以及网页信息中的网页日期、网页内容、网页编辑者和网页评论数,通过多个维度比对第一检索结果和第二检索结果,可以准确地判断第一检索结果和第二检索结果是否相同,进而可以准确得到网络爬虫的测试结果。如果第一检索结果的网址、网页日期、网页内容、网页编辑者和网页评论数,和第二检索结果的网址、网页日期、网页内容、网页编辑者和网页评论数分别对应相同,则表示网络爬虫测试通过,爬虫正确;否则表示网络爬虫测试失败,爬虫失败。
本实施例通过将所述根据所述第一检索结果和所述第二检索结果生成测试结果,具体优化为:根据的网址和网页信息比对所述第一检索结果和所述第二检索结果;当所述第一检索结果的网址和所述第二检索结果的网址相同,以及所述第一检索结果的网页信息和所述第二检索结果的网页信息相同,则测试结果为爬虫正确;否则测试结果为爬虫失败,通过多个维度比对两个检索结果,提高了比对结果的准确性。
实施例四
图4为本申请实施例四提供的网络爬虫的测试装置的结构示意图,如图4所示,所述网络爬虫的测试装置包括:
关键词获取模块410,用于从测试网站对应的网页文件上随机获取测试文本。
第一检索模块420,用于调用所述测试网站的内部查询接口,根据所述测试文本进行检索,以生成第一检索结果。
第二检索模块430,用于运行网络爬虫以得到爬取结果,并在所述爬取结果中检索所述测试文本,以生成第二检索结果。
结果生成模块440,用于根据所述第一检索结果和所述第二检索结果生成测试结果。
可选地,还包括:
测试获取模块,用于从爬虫种子库获取至少一个种子网站作为测试网站;
相应地,所述第二检索模块具体包括:
爬取单元,用于基于所述爬虫种子库运行网络爬虫,获取所述爬虫种子库中的种子网站对应的HTML格式文件;
爬取结果单元,用于将所述HTML格式文件转换为Velocity格式文件,并输入solr库中作为爬取结果;
爬取检索单元,用于在所述solr库中检索所述检测关键词,以生成第二检索结果。
可选地,结果生成模块具体用于:
根据的网址和网页信息比对所述第一检索结果和所述第二检索结果;
当所述第一检索结果的网址和所述第二检索结果的网址相同,以及所述第一检索结果的网页信息和所述第二检索结果的网页信息相同,则测试结果为爬虫正确;
否则测试结果为爬虫失败。
本实施例通过随机获取测试文本,并调用测试网站的内部查询接口进行查询检索得到第一检索结果;运行网络爬虫得到爬虫结果,在爬虫结果中搜索测试文本,以得到第二检索结果,通过第一检索结果和第二检索结果判断网络爬虫是否正常,得到测试结果,可以有效提高网络爬虫的测试效率。
实施例五
本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行网络爬虫的测试方法,该方法包括:
从测试网站对应的网页文件上随机获取测试文本;
调用所述测试网站的内部查询接口,根据所述测试文本进行检索,以生成第一检索结果;
运行网络爬虫以得到爬取结果,并在所述爬取结果中检索所述测试文本,以生成第二检索结果;
根据所述第一检索结果和所述第二检索结果生成测试结果。
可选的,该计算机可执行指令在由计算机处理器执行时还可以用于执行本申请任意实施例所提供的网络爬虫的测试方法。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本申请可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
实施例五
如图5所示,为本申请实施例五提供的一种服务器的硬件结构示意图,如图5所示,该服务器包括:
一个或多个处理器510,图5中以一个处理器510为例;
存储器520;
所述服务器还可以包括:输入装置530和输出装置540。
所述服务器中的处理器510、存储器520、输入装置530和输出装置540可以通过总线或者其他方式连接,图5中以通过总线连接为例。
存储器520作为一种非暂态计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请实施例中的一种网络爬虫的测试方法对应的程序指令/模块(例如,附图4所示的关键词获取模块410、第一检索模块420、第二检索模块430和结果生成模块440)。处理器510通过运行存储在存储器520中的软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例的一种网络爬虫的测试方法。
存储器520可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器520可以包括高速随机存取存储器,还可以包括非暂态性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态性固态存储器件。在一些实施例中,存储器520可选包括相对于处理器510远程设置的存储器,这些远程存储器可以通过网络连接至终端设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置530可用于接收输入的数字或字符信息,以及产生与服务器的用户设置以及功能控制有关的键信号输入。输出装置540可包括显示屏等显示设备。
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。

Claims (10)

1.一种网络爬虫的测试方法,其特征在于,包括:
从测试网站对应的网页文件上随机获取测试文本;
调用所述测试网站的内部查询接口,根据所述测试文本进行检索,以生成第一检索结果;
运行网络爬虫以得到爬取结果,并在所述爬取结果中检索所述测试文本,以生成第二检索结果;
根据所述第一检索结果和所述第二检索结果生成测试结果。
2.根据权利要求1所述的方法,其特征在于,所述从测试网站对应的网页文件上获取测试文本之前,还包括:
从爬虫种子库获取至少一个种子网站作为测试网站。
3.根据权利要求2所述的方法,其特征在于,所述运行网络爬虫以得到爬取结果,并在所述爬取结果中检索所述测试文本,以生成第二检索结果包括:
基于所述爬虫种子库运行网络爬虫,获取所述爬虫种子库中的种子网站对应的HTML格式文件;
将所述HTML格式文件转换为Velocity格式文件,并输入solr库中作为爬取结果;
在所述solr库中检索所述检测关键词,以生成第二检索结果。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述根据所述第一检索结果和所述第二检索结果生成测试结果包括:
根据网址比对所述第一检索结果和所述第二检索结果;
如果所述第一检索结果中的网址和所述第二检索结果中的网址相同,则测试结果为爬虫正确;
否则测试结果为爬虫失败。
5.根据权利要求1至3任一项所述的方法,其特征在于,所述根据所述第一检索结果和所述第二检索结果生成测试结果包括:
根据的网址和网页信息比对所述第一检索结果和所述第二检索结果;
如果所述第一检索结果中的网址和所述第二检索结果中的网址相同,以及所述第一检索结果中的网页信息和所述第二检索结果中的网页信息相同,则测试结果为爬虫正确;
否则测试结果为爬虫失败。
6.一种网络爬虫的测试装置,其特征在于,包括:
关键词获取模块,用于从测试网站对应的网页文件上随机获取测试文本;
第一检索模块,用于调用所述测试网站的内部查询接口,根据所述测试文本进行检索,以生成第一检索结果;
第二检索模块,用于运行网络爬虫以得到爬取结果,并在所述爬取结果中检索所述测试文本,以生成第二检索结果;
结果生成模块,用于根据所述第一检索结果和所述第二检索结果生成测试结果。
7.根据权利要求6所述的装置,其特征在于,还包括:
测试获取模块,用于从爬虫种子库获取至少一个种子网站作为测试网站;
相应地,所述第二检索模块具体包括:
爬取单元,用于基于所述爬虫种子库运行网络爬虫,获取所述爬虫种子库中的种子网站对应的HTML格式文件;
爬取结果单元,用于将所述HTML格式文件转换为Velocity格式文件,并输入solr库中作为爬取结果;
爬取检索单元,用于在所述solr库中检索所述检测关键词,以生成第二检索结果。
8.根据权利要求6或7所述的装置,其特征在于,结果生成模块具体用于:
根据的网址和网页信息比对所述第一检索结果和所述第二检索结果;
当所述第一检索结果的网址和所述第二检索结果的网址相同,以及所述第一检索结果的网页信息和所述第二检索结果的网页信息相同,则测试结果为爬虫正确;
否则测试结果为爬虫失败。
9.一种服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-5任一项所述的网络爬虫的测试方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5任一项所述的网络爬虫的测试方法。
CN201710891661.1A 2017-09-22 2017-09-22 网络爬虫的测试方法、装置、服务器和存储介质 Pending CN107766237A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710891661.1A CN107766237A (zh) 2017-09-22 2017-09-22 网络爬虫的测试方法、装置、服务器和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710891661.1A CN107766237A (zh) 2017-09-22 2017-09-22 网络爬虫的测试方法、装置、服务器和存储介质

Publications (1)

Publication Number Publication Date
CN107766237A true CN107766237A (zh) 2018-03-06

Family

ID=61266781

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710891661.1A Pending CN107766237A (zh) 2017-09-22 2017-09-22 网络爬虫的测试方法、装置、服务器和存储介质

Country Status (1)

Country Link
CN (1) CN107766237A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110457203A (zh) * 2019-07-04 2019-11-15 深圳壹账通智能科技有限公司 爬虫业务测试方法、装置、计算机设备和存储介质
CN110851746A (zh) * 2018-07-27 2020-02-28 北京国双科技有限公司 爬虫种子生成方法及装置
CN111683098A (zh) * 2020-06-10 2020-09-18 创新奇智(成都)科技有限公司 反爬虫方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140081945A1 (en) * 2012-09-14 2014-03-20 International Business Machines Corporation Synchronizing http requests with respective html context
CN105224633A (zh) * 2015-09-24 2016-01-06 北京锐安科技有限公司 基于SQL语言的solr查询方法及装置
CN105335869A (zh) * 2015-09-24 2016-02-17 精硕世纪科技(北京)有限公司 一种广告监测的预警方法及系统
CN106789392A (zh) * 2016-11-16 2017-05-31 山东浪潮云服务信息科技有限公司 一种监控网络爬虫的方法、装置和系统
CN107015819A (zh) * 2016-01-27 2017-08-04 阿里巴巴集团控股有限公司 在服务器端更新html模板的方法和装置
CN107015961A (zh) * 2016-01-27 2017-08-04 中文在线数字出版集团股份有限公司 一种文本相似性比对方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140081945A1 (en) * 2012-09-14 2014-03-20 International Business Machines Corporation Synchronizing http requests with respective html context
CN105224633A (zh) * 2015-09-24 2016-01-06 北京锐安科技有限公司 基于SQL语言的solr查询方法及装置
CN105335869A (zh) * 2015-09-24 2016-02-17 精硕世纪科技(北京)有限公司 一种广告监测的预警方法及系统
CN107015819A (zh) * 2016-01-27 2017-08-04 阿里巴巴集团控股有限公司 在服务器端更新html模板的方法和装置
CN107015961A (zh) * 2016-01-27 2017-08-04 中文在线数字出版集团股份有限公司 一种文本相似性比对方法
CN106789392A (zh) * 2016-11-16 2017-05-31 山东浪潮云服务信息科技有限公司 一种监控网络爬虫的方法、装置和系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110851746A (zh) * 2018-07-27 2020-02-28 北京国双科技有限公司 爬虫种子生成方法及装置
CN110851746B (zh) * 2018-07-27 2022-08-12 北京国双科技有限公司 爬虫种子生成方法及装置
CN110457203A (zh) * 2019-07-04 2019-11-15 深圳壹账通智能科技有限公司 爬虫业务测试方法、装置、计算机设备和存储介质
CN111683098A (zh) * 2020-06-10 2020-09-18 创新奇智(成都)科技有限公司 反爬虫方法、装置、电子设备及存储介质
CN111683098B (zh) * 2020-06-10 2022-12-23 创新奇智(成都)科技有限公司 反爬虫方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
US20040254920A1 (en) Systems and methods that employ a distributional analysis on a query log to improve search results
US7624102B2 (en) System and method for grouping by attribute
WO2021120627A1 (zh) 数据搜索匹配方法、装置、计算机设备和存储介质
US20060287988A1 (en) Keyword charaterization and application
CN113822067A (zh) 关键信息提取方法、装置、计算机设备及存储介质
CN107145496A (zh) 基于关键词将图像与内容项目匹配的方法
EP3311309A1 (en) Methods and systems for object recognition
JP2010501096A (ja) ラッパー生成およびテンプレート検出の協同最適化
CN103955529A (zh) 一种互联网信息搜索聚合呈现方法
JP5989170B2 (ja) 代表者の信頼度を用いた検索結果順位化装置および方法
CN108027820A (zh) 用于产生短语黑名单以响应于搜索查询来防止某些内容出现在搜索结果中的方法和系统
US20220292160A1 (en) Automated system and method for creating structured data objects for a media-based electronic document
CN104391978A (zh) 用于浏览器的网页收藏处理方法及装置
CN107145497A (zh) 基于图像和内容的元数据选择与内容匹配的图像的方法
CN107220250A (zh) 一种模板配置方法及系统
CN107766237A (zh) 网络爬虫的测试方法、装置、服务器和存储介质
CN106874502A (zh) 一种视频搜索的方法、装置及终端
US10191921B1 (en) System for expanding image search using attributes and associations
CN103226601B (zh) 一种图片搜索的方法和装置
Tuteja Enhancement in weighted pagerank algorithm using VOL
CN106446123A (zh) 一种网页中验证码元素识别方法
EP3079083A1 (en) Providing app store search results
US10558631B2 (en) Enhancing textual searches with executables
KR20090130364A (ko) 웹 페이지에 포함되는 이미지에 대하여 태깅을 수행하고 그 결과를 이용하여 웹 검색 서비스를 제공하기 위한 방법, 장치 및 컴퓨터 판독 가능한 기록 매체
CN110297994A (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

Application publication date: 20180306

RJ01 Rejection of invention patent application after publication