网站检测方法和装置与流程

文档序号:18740601发布日期:2019-09-21 01:43阅读:286来源:国知局
网站检测方法和装置与流程

本申请涉及网站构建技术领域,尤其涉及一种网站检测方法和装置。



背景技术:

网站是指在因特网上根据一定的规则,工具制作的用于展示特定内容相关网页的集合。人们可以通过网站可以发布自己想要公开的资讯,或者利用网站来提供相关的网络服务。

而网站的构建需要遵循一些规则,如,较为常见的规则为搜索引擎优化(Search Engine Optimization,SEO)规则。基于SEO规则来调整网站有利于一提高目的网站在有关搜索引擎内的排名。然而,很多网站网站在构建过程中很可能并未很好的遵循SEO规则,这样就会导致网站存在一些需要改进的问题,因此,如何较为全面、高效的检测出网站中存在不符合SEO规则的问题点是本领域技术人员迫切需要解决的技术问题。



技术实现要素:

有鉴于此,本申请提供了一种网站检测方法和装置,以实现更为快速、全面和高效的对网站进行SEO规则检测。

为实现上述目的,一方面,本申请提供了一种网站检测方法,包括:

获取待检测的网站的网站地址;

依据所述网站地址,依次爬取所述网站中包含的各个网页的源代码;

依据预置的多条搜索引擎优化SEO规则,对所述网站中各个网页的源代码进行异常检测,得到所述网站的异常检测结果,所述异常检测结果包括所述网站中不符合所述SEO规则的异常网页以及所述异常网页中不符合所述SEO规则的异常原因;

输出所述异常检测结果。

优选的,所述多条SEO规则包括:适用于网页内的至少一条第一SEO规则以及适用于不同网页间的至少一条第二SEO规则;

所述依据预置的多条搜索引擎优化SEO规则,对所述网站中各个网页的源代码进行异常检测,包括:

按照适用于网页内的至少一条第一SEO规则,分别对网页中每个网页的源代码进行异常检测,得到所述网站中各个网页的异常检测结果;

按照适用于不同网页间的至少一条第二SEO规则,在所述网站中不同网页之间进行异常检测,得到所述网站中存在网页间异常的至少一个异常网页组以及所述异常网页组的异常原因,所述异常网页组包括至少两个异常网页。

优选的,所述至少一条第二SEO规则包括:重复网页检测规则;

所述按照适用于不同网页间的至少一条第二SEO规则,在所述网站中不同网页之间进行异常检测,包括:

响应于所述重复网页检测规则,分别提取所述网站的每个网页的正文数据;

针对所述网站中每个网页,基于该网页的正文数据,计算该网页的局部敏感指纹;

针对所述网站中的每个网页,依据所述网站中各个网页的局部敏感指纹,分别计算该网页与网站中其他网页的海明距离,并确定与该网页的海明距离小于设定阈值的至少一个网页,将该网页以及所述至少一个网页确定为一组存在内容重复的异常网页组。

优选的,所述依据所述网站地址,依次爬取所述网站中包含的各个网页的源代码,包括:

依据所述网站地址,爬取所述网站的主页的源代码;

提取所述主页的源代码中包含的至少一条链接,并将提取到的链接缓存到链接集合中;

针对所述链接集合中未被处理的每条链接,依据该链接抓取所述网站中的网页的源代码;

提取所述网页的源代码中包含的链接,并将提取到的链接缓存到所述链接集合中;

如果所述链接集合中存在尚未被处理的链接,返回执行所述针对每条链接,依据该链接抓取所述网站中的网页的源代码的操作,直至所述链接集合中不存在尚未被处理的链接,得到所述网站中包含的各个网页的源代码。

优选的,所述针对所述链接集合中的每条链接,依据该链接抓取所述网站中的网页的源代码,包括:

从所述链接集合中确定当前待处理的目标链接;

从分布式爬虫中,确定适合处于该目标链接的目标爬虫;

通过所述目标爬虫抓取所述目标链接所指向的网页的源代码。

优选的,所述输出所述异常检测结果之前,还包括:

依据搜索引擎优化SEO规则和所述异常网页中不符合所述SEO规则的异常原因,确定网站中所述异常网页的优化方案;

在所述输出所述异常检测结果的同时,还包括:输出所述网站中所述异常网页的优化方案。

优选的,所述获取待检测的网站的网站地址,包括:

获取用户输入的待检测的网站的域名;

基于所述网站的域名,确定所述网站的统一资源定位符URL。

又一方面,本申请还提供了一种网站检测装置,包括:

地址获取单元,用于获取待检测的网站的网站地址;

代码爬取单元,用于依据所述网站地址,依次爬取所述网站中包含的各个网页的源代码;

异常检测单元,用于依据预置的多条搜索引擎优化SEO规则,对所述网站中各个网页的源代码进行异常检测,得到所述网站的异常检测结果,所述异常检测结果包括所述网站中不符合所述SEO规则的异常网页以及所述异常网页中不符合所述SEO规则的异常原因;

结果输出单元,用于输出所述异常检测结果。

优选的,所述异常检测规则中的多条SEO规则包括:适用于网页内的至少一条第一SEO规则以及适用于不同网页间的至少一条第二SEO规则;

所述异常检测单元,包括:

第一异常检测单元,用于按照适用于网页内的至少一条第一SEO规则,分别对网页中每个网页的源代码进行异常检测,得到所述网站中各个网页的异常检测结果;

第二异常检测单元,用于按照适用于不同网页间的至少一条第二SEO规则,在所述网站中不同网页之间进行异常检测,得到所述网站中存在网页间异常的至少一个异常网页组以及所述异常网页组的异常原因,所述异常网页组包括至少两个异常网页。

优选的,所述至少一条第二SEO规则包括:重复网页检测规则;

所述第二异常检测单元,包括:

正文提取单元,用于响应于所述重复网页检测规则,分别提取所述网站的每个网页的正文数据;

指纹计算单元,用于针对所述网站中每个网页,基于该网页的正文数据,计算该网页的局部敏感指纹;

重复检测单元,用于针对所述网站中的每个网页,依据所述网站中各个网页的局部敏感指纹,分别计算该网页与网站中其他网页的海明距离,并确定与该网页的海明距离小于设定阈值的至少一个网页,将该网页以及所述至少一个网页确定为一组存在内容重复的异常网页组。

经由上述的技术方案可知,在本申请实施例中,在获取到待检测的网站的网站地址之后,会依次爬取出该网站中包含的所有网页的源代码,并结合预置的多条SEO规则对网站中各个网页进行异常检测,可见,本申请可以一次性对网站中涉及到的所有网站均异常检测,实现了一次性检测出网站的各个网页中不符合SEO规则的异常网页以及异常原因,并提示给用户,从而可以通过对网站的一次检测全面覆盖网站中各个网页,更为全面的检测出网站中不符合SEO规则的异常情况。

而且,与每次仅仅检测一种SEO规则不同,本申请中对于网站中各个网页进行检测时,会按照预置的多条SEO进行异常检测,这样,通过对网站的一次检测可以实现对多种SEO规则的异常检测,避免了通过多次提交网站检测来实现多种SEO规则的检测,有利于更为全面、高效的检测出网站中不符合SEO规则的异常情况。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1示出了本申请的一种网站检测方法的一种流程示意图;

图2示出了本申请的一种网站检测方法的又一种流程示意图;

图3示出了本申请的一种网站检测方法的又一种流程示意图;

图4示出了本申请的一种网站检测装置的一种组成结构示意图。

具体实施方式

本申请的方案适用于对于构建的网站进行SEO规则的检测,以检测出网站中不符合SEO规则的异常情况,以为合理改进或者优化该网站提供依据。

下面结合流程图进行详细介绍。

如图1所示,其示出了本申请一种网站检测方法的一种流程示意图,本实施例的方法可以应用于用于网站检测的网站检测平台,该网站检测平台可以为一台计算机设备或者多台计算机设备的集合,如,包括多台服务器的分布式计算系统或者分布式服务器等等。本实施例的方法可以包括:

S101,获取待检测的网站的网站地址。

其中,待检测的网站为当前需要进行SEO规则检测的网站。该网站的网站地址用于指向该网站的网页。

可以理解的是,用户可以根据实际需要向网站检测平台提交所需检测的网站地址等信息。

可选的,考虑到域名对于用户更为便于记忆,本申请实施例中,在用户需要对某个网站进行检测时,可以向网站检测平台提交待检测的网站的域名。相应的,该网站检测平台可以获取用户输入的待检测网站的域名,并基于该网站的域名,确定出网站的统一资源定位符(UniformResource Locator,URL)。

S102,依据该网站地址,依次爬取该网站中包含的各个网页的源代码。

其中,网站一般都会有多个网页构成,为了能够对网站进行全面的SEO规则的检测,则需要爬取出该网站中包含的所有网页的源代码。

可以理解的是,网站的多个网页之间会具有链接关系,如,网站的主页中可以包括一个或者多个链接到下一级网页的链接(也可以称为链接地址),而链接到该主页的下一级网页之后,该下一级网页还可以链接到再下一级网页,依次类推。相应的,本申请可以基于该网站地址,依次爬取网站中的各个网页的源代码并分析各个网页的源代码中的链接,并通过不断迭代最终爬取出该网站中所有网页的源代码。

如,在一种可能的实现方式中,可以依据该网站地址,爬取该网站的主页的源代码,并提取该主页的源代码中包含的至少一条链接,并将提取到的链接缓存到链接集合中。然后,针对该链接集合中未被处理的每条链接,依据该链接抓取所述网站中的网页的源代码,并提取该网页的源代码中包含的链接。如果在网页的源代码中提取到链接,则将提取到的链接缓存到链接集合中。如果链接集合中存在尚未被处理的链接,则针对链接集合未被处理的每条链接,继续执行依据该链接抓取所述网站中的网页的源代码的操作,直至得到链接集合中不存在未被处理的链接,从而得到网页中包含的各个网页的源代码。

可以理解的是,由于网站中的网页数量一般较多,因此,每爬取出一个网页的源代码之后,可以缓存该网页的源代码,同时继续爬取其他网页的源代码。

其中,在本申请中可以通过爬虫爬取网页的源代码,并提取出源代码中存在的链接。其中,爬虫是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。可选的,为了提高源代码的爬取效率,本申请可以采用分布式爬虫爬取网站中各个网页的源代码。

S103,依据预置的多条搜索引擎优化SEO规则,对该网站中各个网页的源代码进行异常检测,得到该网站的异常检测结果。

其中,SEO规则也称为SEO建站规则。

预置的多条SEO规则可以根据需要设定,如,该多条SEO规则中可以包括检测网页中源代码的标签命名或者格式等是否符合要求的规则,源代码中网页内容以及布局所需的SEO规则等等。

可以理解的是,与单独配置一条SEO规则相比,由于本申请的网站检测平台预置了多条SEO规则,因此,用户发起对某个网站的SEO检测之后,该网站检测平台可以一次性对该网站进行多条SEO规则检测,从而无需用户通过复杂的操作来多次提交针对网站的不同SEO规则的检测,提高了网站检测的便捷性和高效性。

在本申请实施例中,该异常检测结果可以包括该网站中不符合SEO规则的异常网页以及异常网页中不符合该SEO规则的异常原因。如,假设网站中某个网页的网页标签的命名不符合关于网页标签命名的SEO规则的相关规则,则该网页属于异常网页,而异常语音为网页标签不符合要求。

S104,输出该异常检测结果。

其中,输出异常检测结果可以用于提示用户该网站中不符合SEO规则的地方,从而有利于用户及时改进或优化该网站。

可选的,在该步骤S104之前,本申请还可以结合SEO规则和异常网页中不符合所述SEO规则的异常原因,确定网站中所述异常网页的优化方案。如,假设网页不符合SEO规则的语音为网页标签的格式不符合要求,那么根据SEO规则中对于网页标签格式的要求,可以给出优化方案为调整网页标签格式,且网页标签格式所需满足的格式(所需满足的格式可以按照SEO规则得到)。

相应的,在输出该异常检测结果的同时,还可以输出该网站中异常网页的优化方案,从而使得用户可以更为高效的确定网页的改进方式。

由本申请的方案可知,在获取到待检测的网站的网站地址之后,会依次爬取出该网站中包含的所有网页的源代码,并结合预置的多条SEO规则对网站中各个网页进行异常检测,可见,本申请可以一次性对网站中涉及到的所有网站均异常检测,实现了一次性检测出网站的各个网页中不符合SEO规则的异常网页以及异常原因,并提示给用户,从而可以通过对网站的一次检测全面覆盖网站中各个网页,更为全面的检测出网站中不符合SEO规则的异常情况。

而且,与每次仅仅检测一种SEO规则不同,本申请中对于网站中各个网页进行检测时,会按照预置的多条SEO进行异常检测,这样,通过对网站的一次检测可以实现对多种SEO规则的异常检测,避免了通过多次提交网站检测来实现多种SEO规则的检测,有利于更为全面、快速的检测出网站中不符合SEO规则的异常情况。

可以理解的是,考虑到SEO规则不仅仅包括针对单个网页的检测规则,还可能会包括多个网页之间的检测规则,因此,本申请的多条SEO规则可以包括:适用于网页内的至少一条第一SEO规则以及适用于不同网页间的至少一条第二SEO规则。其中,为了便于区分,将适用于单个网页内的SEO规则称为第一SEO规则,而将适用于不同网页之间检测的SEO规则称为第二SEO规则。

相应的,在对网站中各个网页的源代码进行异常检测时,可以按照至少一条第一SEO规则,分别对网页中每个网页的源代码进行异常检测,得到网站中各个网页的异常检测结果。其中,按照第一SEO规则是分别对每个网页单独进行异常检测,以分析每个网页本身是否属于不符合对于网页本身的格式或者布局等规定的SEO规则,并确定出存在异常的网页以及异常原因。

另外,本申请还会按照适用于不同网页间的至少一条第二SEO规则,在该网站中不同网页之间进行异常检测,得到该网站中存在网页间异常的至少一个异常网页组以及该异常网页组的异常原因。其中,该异常网页组包括至少两个异常网页。

其中,第二SEO规则为针对两个或者多个网页之间的检测规则,以检测两个或者多个网页之间是否符合第二SEO规则,如果两个或者多个网页之间不存第二SEO规则,则会将这两个或者多个网页确定为一个存在异常的异常网页组。例如,网页1与网页2之间不符合某条第二SEO规则,则该网页1和网页2属于一个异常网页组,而网页3和网页4之间也不符合某条第二SEO规则,则该网页3和网页4属于另一个异常网页组中的网页。

可选的,该至少一条第二SEO规则中可以包括:重复网页检测规则,该重复网页检测规则用于检测两个或者多个网页之间的内容重复度是否超过阈值,如果超过阈值,则认为该两个或者多个网页之间的重复度过高,不符合SEO规则。

为了便于理解,下面以第二SEO检测规则为重复网页检测规则为例,对本申请的网站检测方法进行介绍。如,参见图2,其示出了本申请一种网站检测方法的又一种流程示意图,本实施例的方法可以包括:

S201,获取用户提交的待检测网站的域名。

S202,基于该网站的域名,确定出网站的URL。

本实施例是以获取待检测网站的网站地址的一种实现方式为例说明,对于其他方式也适用。

S203,依据该网站地址,依次爬取该网站中包含的各个网页的源代码。

S204,按照至少一条第一SEO规则,分别对网页中每个网页的源代码进行异常检测,得到网站中各个网页的异常检测结果。

其中,该异常检测结果可以包括存在异常的异常网页以及异常网页的异常原因。

S205,基于至少一条第二SEO规则中的重复网页检测规则,分别提取网站的每个网页的正文数据。

其中,网页的正文数据可以从网页的源代码中提取,具体提取方式不做限制。

可选的,本步骤也可以是提取网页中属于设定的网页核心内容的核心正文数据。

S206,针对该网站中每个网页,基于该网页的正文数据,计算该网页的局部敏感指纹。

其中。网页的局部敏感指纹就是俗称的simhash指纹,也可以称为局部敏感哈希。

S207,针对该网站中的每个网页,依据该网站中各个网页的局部敏感指纹,分别计算该网页与网站中其他网页的海明距离,并确定与该网页的海明距离小于设定阈值的至少一个网页,将该网页以及该至少一个网页确定为一组存在内容重复的异常网页组,得到存在内容重复的至少一个异常网页组。

可以理解的是,任意两个网页而言,如果依据这两个网页各自的局部敏感指纹计算出这两个网页的海明距离小于设定阈值,则说明这两个网页的内容重复度较高,从而认为这两个网页的重复度不符合SEO规则。

基于此,针对网站中的每个网页,需要将该网页分别与网页中的其他网页进行比对,以找到相互之间重复度较高的两个或多个网页,而相互之间重复度较高的两个或者多个网页为一组异常网页组。

S208,输出网站中网页的异常检测结果以及存在内容重复的至少一个网页组的信息。

可以理解的是,在本申请实施例中,可以通过不断迭代来抓取各个网页的源代码中存在的链接所指向的其他网页的源代码,在该过程中,可以结合分布式爬虫来提高爬取效率。为了便于理解,可以参见图3,其示出了本申请一种网站检测方法的又一种流程示意图,本实施例的方法可以包括:

S301,获取用户提交的待检测网站的域名。

S302,基于该网站的域名,确定出网站的URL。

本实施例是以获取待检测网站的网站地址的一种实现方式为例说明,对于其他方式也适用。

S303,依据该网站的URL,爬取该网站的主页的源代码。

可以理解的是,网站的URL指向的网站的主页,因此,基于该网站的URL可以首先抓取到网站的主页的源代码。

S304,提取该主页的源代码中包含的至少一条链接,并将提取到的链接缓存到链接集合中。

为了依次迭代存储各个网页的原代码中的链接,则可以将从网站中每个网页提取出的链接均缓存到一个链接集合中。

S305,从链接集合中确定当前待处理的目标链接。

其中,为了便于区分,将链接集合中尚未被爬虫爬取的链接称为目标链接。

S306,从分布式爬虫中,确定适合处于该目标链接的目标爬虫。

可以理解的是,该分布式爬虫可以由多个爬虫模块构成,该网站检测平台可以根据负载均衡原则为分布式爬虫中各个爬虫模块分配待爬取的链接。基于此,可以确定待处理该目标链接的目标爬虫。

S307,通过该目标爬虫抓取该目标链接所指向的网页的源代码,并将源代码存储到代码存储区。

其中,将源代码存储的代码存储区为可选操作,其目的是为了后续便于集中管理所抓取到的该网站的所有网页各自的源代码,以便逐个对网页进行SEO规则检测。

S308,提取该网页的源代码中包含的链接,并将提取到的链接缓存到链接集合中。

可以理解的是,在爬虫基于一条链接,爬取到该链接所指向的网页的源代码之后,由于该网页的源代码中仍可能会包含链接其他网页的链接地址,因此,仍需要从该网页的源代码中提取链接。同时,为了能够爬取出网站的各层网页的源代码,在提取出源代码中的链接之后也需要存储到链接集合中,以便继续分析是否存在尚未被爬取出的网页的源代码。

S309,检测该链接集合中存在尚未被处理的链接,如果是,则返回步骤S305;如果是,获得代码存储区中存储的该网页中包含的各个网页的源代码并执行步骤S310。

可以理解的是,如果链接集合中存在链接均分配给爬虫爬取,则说明网站中不存在尚未被挖掘的网页的链接地址,在该种情况下,则可以确认该代码存储区存储了该网站中所有网页的源代码。

S310,依据预置的多条搜索引擎优化SEO规则,对该网站中各个网页的源代码进行异常检测,得到该网站的异常检测结果。

S311,输出异常检测结果。

该步骤S310和S311可以参见前面实施例的相关介绍,在此不再赘述。

对应本申请的一种网站检测方法,本申请还提供了一种网站检测装置。

如,参见图4,其示出了本申请一种网站检测装置的一种组成结构示意图,本实施例的装置可以包括:

地址获取单元401,用于获取待检测的网站的网站地址;

代码爬取单元402,用于依据所述网站地址,依次爬取所述网站中包含的各个网页的源代码;

异常检测单元403,用于依据预置的多条搜索引擎优化SEO规则,对所述网站中各个网页的源代码进行异常检测,得到所述网站的异常检测结果,所述异常检测结果包括所述网站中不符合所述SEO规则的异常网页以及所述异常网页中不符合所述SEO规则的异常原因;

结果输出单元404,用于输出所述异常检测结果。

在一种可能的实现方式中,该异常检测规则中的多条SEO规则包括:适用于网页内的至少一条第一SEO规则以及适用于不同网页间的至少一条第二SEO规则;

所述异常检测单元,包括:

第一异常检测单元,用于按照适用于网页内的至少一条第一SEO规则,分别对网页中每个网页的源代码进行异常检测,得到所述网站中各个网页的异常检测结果;

第二异常检测单元,用于按照适用于不同网页间的至少一条第二SEO规则,在所述网站中不同网页之间进行异常检测,得到所述网站中存在网页间异常的至少一个异常网页组以及所述异常网页组的异常原因,所述异常网页组包括至少两个异常网页。

可选的,所述至少一条第二SEO规则包括:重复网页检测规则;

所述第二异常检测单元,包括:

正文提取单元,用于响应于所述重复网页检测规则,分别提取所述网站的每个网页的正文数据;

指纹计算单元,用于针对所述网站中每个网页,基于该网页的正文数据,计算该网页的局部敏感指纹;

重复检测单元,用于针对所述网站中的每个网页,依据所述网站中各个网页的局部敏感指纹,分别计算该网页与网站中其他网页的海明距离,并确定与该网页的海明距离小于设定阈值的至少一个网页,将该网页以及所述至少一个网页确定为一组存在内容重复的异常网页组。

在又一种可能的实现方式中,所述代码爬取单元,包括:

第一爬取单元,用于依据所述网站地址,爬取所述网站的主页的源代码;

第一链接提取单元,提取所述主页的源代码中包含的至少一条链接,并将提取到的链接缓存到链接集合中;

第二爬取单元,用于针对所述链接集合中的每条链接,依据该链接抓取所述网站中的网页的源代码;

第二链接提取单元,用于提取所述网页的源代码中包含的链接,并将提取到的链接缓存到所述链接集合中;

爬取终止处理单元,用于如果所述链接集合中存在尚未被处理的链接,返回执行所述针对每条链接,依据该链接抓取所述网站中的网页的源代码的操作,直至得到所述网页中包含的各个网页的源代码。

可选的,所述第二爬取单元,包括:

链接确定子单元,用于从所述链接集合中确定当前待处理的目标链接;

爬虫分配子单元,用于从分布式爬虫中,确定适合处于该目标链接的目标爬虫;

第二爬取子单元,用于通过所述目标爬虫抓取所述目标链接所指向的网页的源代码。

可选的,在本申请以上装置的实施例中,该装置还可以包括:

优化确定单元,用于在所述结果输出单元输出所述异常检测结果之前,依据搜索引擎优化SEO规则和所述异常网页中不符合所述SEO规则的异常原因,确定网站中所述异常网页的优化方案;

所述优化输出单元,用于在所述结果输出单元输出所述异常检测结果的同时,输出所述网站中所述异常网页的优化方案。

可选的,该装置中地址获取单元,包括:

域名获取单元,用于获取用户输入的待检测的网站的域名;

地址转换单元,用于基于所述网站的域名,确定所述网站的统一资源定位符URL。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

以上仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1