CN111858929A - 一种基于图神经网络的网络爬虫检测方法、系统及装置 - Google Patents
一种基于图神经网络的网络爬虫检测方法、系统及装置 Download PDFInfo
- Publication number
- CN111858929A CN111858929A CN202010573565.4A CN202010573565A CN111858929A CN 111858929 A CN111858929 A CN 111858929A CN 202010573565 A CN202010573565 A CN 202010573565A CN 111858929 A CN111858929 A CN 111858929A
- Authority
- CN
- China
- Prior art keywords
- resource
- node
- features
- network session
- edge
- 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
Images
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/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于图神经网络的网络爬虫检测方法、系统及装置,其中,所述方法包括:获取网络会话样本,所述网络会话样本中包括访问的各个资源;提取所述网络会话样本中各个所述资源的资源特征,所述资源特征包括所述资源在网站中体现的固有特征和/或用户访问所述资源的会话特征;基于提取的所述资源特征,构建所述网络会话样本的资源图,并利用预设图算法对构建的所述资源图进行训练,以通过训练得到的分类模型检测网络爬虫。本申请提供的技术方案,能够提高网络爬虫的检测效率。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种基于图神经网络的网络爬虫检测方法、系统及装置。
背景技术
随着互联网技术的不断发展,网络爬虫的泛滥也成为互联网中日趋严重的问题,据统计,有些网站一半以上的流量都来自网络爬虫。目前,针对网络爬虫的检测方法也在不断完善,例如,可以利用统计学特征对网站的流量进行分析,从而识别出流量中的网络爬虫。此外,还可以借助于深度学习的算法,将用户的访问请求转换为时间序列的问题进行分析,从而识别出哪些访问行为其实是网络爬虫发起的。
然而,现有的网络爬虫的检测方法,通常只能对固定时间长度的数据进行分析,如果数据的序列过长,则需要对数据进行分割之后再进行处理,这样无疑会降低网络爬虫的检测效率。
发明内容
本申请的目的在于提供一种基于图神经网络的网络爬虫检测方法、系统及装置,能够提高网络爬虫的检测效率。
为实现上述目的,本申请一方面提供一种基于图神经网络的网络爬虫检测方法,所述方法包括:获取网络会话样本,所述网络会话样本中包括访问的各个资源;提取所述网络会话样本中各个所述资源的资源特征,所述资源特征包括所述资源在网站中体现的固有特征和/或用户访问所述资源的会话特征;基于提取的所述资源特征,构建所述网络会话样本的资源图,并利用预设图算法对构建的所述资源图进行训练,以通过训练得到的分类模型检测网络爬虫。
为实现上述目的,本申请另一方面还提供一种基于图神经网络的网络爬虫检测系统,所述系统包括:会话样本获取单元,用于获取网络会话样本,所述网络会话样本中包括访问的各个资源;特征提取单元,用于提取所述网络会话样本中各个所述资源的资源特征,所述资源特征包括所述资源在网站中体现的固有特征和/或用户访问所述资源的会话特征;资源图训练单元,用于基于提取的所述资源特征,构建所述网络会话样本的资源图,并利用预设图算法对构建的所述资源图进行训练,以通过训练得到的分类模型检测网络爬虫。
为实现上述目的,本申请另一方面还提供一种基于图神经网络的网络爬虫检测装置,所述基于图神经网络的网络爬虫检测装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现上述的基于图神经网络的网络爬虫检测方法。
由上可见,本申请一个或者多个实施方式提供的技术方案,可以针对网络会话样本中的资源进行分析,从而判断网络会话样本是否由网络爬虫发起的。具体地,可以提取待分析的各个资源的资源特征,该资源特征除了可以包括资源在网站中的固有特征,还可以包含用户访问该资源时产生的会话特征。针对提取的资源特征,可以构建该网络会话样本的资源图。通过预设图算法对构建的资源图进行训练,可以训练出基于图神经网络的分类模型。后续,利用该分类模型,可以便捷地检测出由网络爬虫发起的网络会话。由于采用了图的形式,因此可以很好地兼顾长文本和短文本,输入分类模型的数据不再有上限和下限的限制,进而提高了网络爬虫的检测效率。
附图说明
为了更清楚地说明本发明实施方式中的技术方案,下面将对实施方式描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施方式中网络爬虫的检测方法流程图;
图2是本发明实施方式中辅助资源作为附属特征的资源唯一型有向示意图;
图3是本发明实施方式中辅助资源作为主节点的资源唯一型有向示意图;
图4是本发明实施方式中辅助资源作为副节点的资源唯一型有向示意图;
图5是本发明实施方式中辅助资源作为主节点的资源不唯一型有向示意图;
图6是本发明实施方式中辅助资源作为附属特征的资源不唯一型有向示意图;
图7是本发明实施方式中辅助资源作为副节点的资源不唯一型有向示意图;
图8是本发明实施方式中辅助资源作为主节点的资源不唯一型无向示意图;
图9是本发明实施方式中网络爬虫检测系统的功能模块示意图;
图10是本发明实施方式中网络爬虫检测装置的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施方式及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施方式仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本申请保护的范围。
请参阅图1,本申请一个实施方式提供一种基于图神经网络的网络爬虫检测方法,该方法可以包括以下多个步骤。
S1:获取网络会话样本,所述网络会话样本中包括访问的各个资源。
在本实施方式中,所述网络会话样本可以是正常用户或者网络爬虫针对网站发起的会话请求,在该会话请求中,可以包含访问的一系列资源。在实际应用中,可以针对某个待检测的IP地址进行网络会话样本的获取。在该IP地址下,可以是单个的用户,也可以是共用同一个IP地址的多个用户。从该IP地址处获取的网络会话请求,便可以作为该IP地址的网络会话样本。此外,还可以按照其它的方式限定网络会话样本的获取范围。例如,可以获取特定网络账户发起的网络会话请求,还可以获取特定地区中指定IP地址段发起的网络会话请求,本申请对此并不做限定。
在实际应用中,各个不同的网站可能具备不同的业务需求,不同的业务需求就会涉及不同的网络资源。例如,在某些网站,主要提供的是静态资源,而某些网站主要提供的是动态资源,还有些网站静态资源和动态资源都会大量涉及。其中,静态资源和动态资源可以按照后缀进行划分。例如,aspx/jsp/php/do/asp/cgi/action/js等后缀的资源可以作为动态资源,而exe/wmv/mp3/wma/ogg/swf等后缀的资源可以作为静态资源。当然,在某些特定场景下,会存在伪静态资源的情况,例如html/htm等后缀在传统的网页中是静态资源,但很多使用伪静态技术的动态页面的后缀也是html/htm,因此可以根据网站的实际情况灵活地区分静态资源和动态资源。
在一个实施方式中,为了减少数据的处理量,在获取到目标网站的当前网络会话后,可以解析该当前网络会话中包含的各个候选资源,这些候选资源在目标网站中,一部分可能是与业务需求相关的热门资源,而有一部分可能是与业务需求不太相关的冷门资源。此时,可以根据目标网站的业务需求,从各个候选资源中筛选出热门的目标资源,并可以将这些热门的目标资源作为网络会话样本中包含的资源,其它冷门的资源则可以剔除出去,在后续的资源分析过程中,可以仅分析网络会话样本中包含的热门资源。
在实际应用中,根据检测目的的不同,可以训练不同类型的分类模型。例如,在一些场景下,只需要对某种或者某几种网络爬虫进行检测,而对其它的网络爬虫则无需检测。在这种情况下,这些需要检测的网络爬虫可以作为指定类型的网络爬虫,然后可以将获取的网络会话样本中,将所述指定类型的网络爬虫发起的网络会话样本标注为正样本,并将其它的网络会话样本标注为负样本(负样本中可以包括正常访问请求和其它网络爬虫的访问请求),这样,可以训练出用于检测指定类型的网络爬虫的分类模型。而如果需要对常规的任意网络爬虫都进行检测,那么可以将任何网络爬虫发起的网络会话样本标注为正样本,并将正常用户发起的网络会话样本标注为负样本。这样可以训练出用于检测任意的网络爬虫的分类模型。可见,根据待训练的分类模型的类型不同,对网络会话样本进行标注的方式也可以不同。
在本实施方式中,将多种不同的网络爬虫混合在一起进行模型训练,可以使得分类模型能够有效地学习到不同网络爬虫之间的相关性,这样,当面对一些混合的网络爬虫发起的网络会话请求时,能够有较好的检测精度。
S3:提取所述网络会话样本中各个所述资源的资源特征,所述资源特征包括所述资源在网站中体现的固有特征和/或用户访问所述资源的会话特征。
在本实施方式中,在获取了网络会话样本之后,可以针对网络会话样本中的资源进行分析,从而提取出资源的资源特征。在实际应用中,资源特征可以包括资源在网站中体现的固有特征,还可以包括用户访问资源的会话特征。具体地,固有特征中通常会包含资源标识,该资源标识是用于唯一表征对应资源的字符串。此外,固有特征还可以包括资源的访问热度、资源的内容类型、资源的信息量、资源的功能属性中的一种或者多种。会话特征可以包括资源访问间隔时长、资源或者页面的停留时长、网络会话中的访问序列、用户权项的变化情况、资源访问次数中的一种或者多种。需要说明的是,上述的固有特征和会话特征是为了便于理解本申请的方案而例举的可能出现的情况,在实际应用中,采用的固有特征和会话特征还可以包含更多的情况,并不局限于以上例举的多种实现方式。
在本实施方式中,解析出的资源特征可以通过数值进行表示,而不同的数值可以具备不同的数值类型。具体地,数值类型可以包括连续性数据和离散型数据。针对连续型数据,可以对资源特征进行标准化和归一化处理。例如,可以进行Standard Scale这样的标准化处理,还可以进行MinMax Scale这样的归一化处理。而针对离散型数据,可以将资源特征转换为特征向量。具体地,可以采用编码的方式,将离散型数据转换为特征向量。在实际应用中,常用的编码方式可以包括独热编码、哑编码、标签编码等。其中,如果选用标签编码,则需要在标签编码之后添加一个嵌入层,从而可以将标签编码后的数据通过嵌入层转换为特征向量。举例来说,在进行标签编码时,离散的资源特征可以按照字符进行标签分类,离散的资源特征中的每个字符都可以用对应的标签进行表示。这样,可以将离散的资源特征转换为标签序列。然后,可以添加一个嵌入层,将标签序列中的各个标签转换为对应的中间向量(类别向量),从而可以得到由各个中间向量(类别向量)构成的特征向量。
S5:基于提取的所述资源特征,构建所述网络会话样本的资源图,并利用预设图算法对构建的所述资源图进行训练,以通过训练得到的分类模型检测网络爬虫。
在本实施方式中,在提取出资源特征,并根据数值类型对资源特征进行处理之后,便可以利用处理后的资源特征构建网络会话样本的资源图。在构建资源图之前,可以在网络会话样本中确定主要资源和辅助资源。其中,主要资源和辅助资源可以按照网站中的资源热度进行划分。当然,在具体应用场景中,还可以按照其它标准进行主要资源和辅助资源的划分,本申请对此并不做限定。对于主要资源而言,可以在资源图中生成对应的主节点,对于辅助资源而言,可以根据辅助资源的表现形式,在待构建的资源图中生成与所述表现形式相匹配的内容。
具体地,如果辅助资源的表现形式为附属形式,那么可以确定与所述辅助资源同时触发的目标主要资源,并将所述辅助资源的资源特征作为附属特征,添加至所述目标主要资源的主节点中。例如在图2中,a.jpg和b.mp3为辅助资源,与这两个辅助资源同时触发的目标主要资源为B.html,那么,这两个辅助资源可以作为主要资源B.html的附属特征,共同存在于主要资源B.html的主节点中。同理,在图2中,与a.jpg同时触发的目标主要资源为D.html,那么可以将a.jpg作为附属特征,添加于主要资源D.html的主节点中。
而如果辅助资源的表现形式为主节点形式,那么辅助资源此时可以视为主要资源,需要生成所述辅助资源对应的主节点。例如在图3中,a.jpg和b.mp3都生成了对应的主节点。如果辅助资源的表现形式为副节点形式,则可以生成所述辅助资源对应的副节点,并将所述副节点连接至与所述辅助资源同时触发的主要资源的主节点上。例如在图4中,a.jpg和b.mp3都生成了对应的副节点,由于a.jpg和b.mp3与B.html同时触发,因此需要将这两个副节点都连接至B.html的主节点上。又由于a.jpg与D.html同时触发,那么需要将a.jpg的副节点连接至D.html的主节点上。
在实际应用中,构建的资源图主要可以分为两种类型,一种是资源唯一性,一种是资源不唯一型。其中,资源唯一型的资源图中,各个节点代表的资源是唯一的,重复的资源在资源图中也只会具备唯一的节点。而在资源不唯一型的资源图中,网络会话样本中出现的资源,无论是否发生重复,都需要创建一个新的节点。下面,将通过网络会话样本“A.html,(B.html,a.jpg,b.mp3),C.html,(D.html,a.jpg),A.html,C.html”为例,针对这两种类型的资源图分别阐述。其中,括号内的资源可以视为同时触发的资源。
对于资源唯一型的资源图而言,若所述网络会话样本中包括多个重复的目标主要资源,那么针对重复的所述目标主要资源,仅生成一个对应的主节点。例如在上述的网络会话样本中,A.html和C.html都出现了重复访问的情况,而在图2至图4中,A.html和C.html仅存在唯一的一个主节点。此外,对于辅助资源为副节点的情况,也需要遵循资源唯一型的原则。例如在图4中,辅助资源a.jpg被多次访问,但该辅助资源对应的副节点也只有一个。
对于资源不唯一型的资源图而言,若网络会话样本中包括多个重复的目标主要资源,针对每个重复的所述目标主要资源,都需要分别生成对应的主节点。例如,在图5中,辅助资源也作为主节点,那么由于A.html、C.html以及a.jpg都出现了重复访问的情况,因此需要针对每一次的访问,都生成对应的主节点。在图6中,辅助资源作为附属特征被添加至主节点中,由于A.html和C.html都出现了重复访问的情况,因此需要针对每一次的访问,都生成对应的主节点。又例如在图7中,辅助资源作为副节点,由于A.html、C.html以及a.jpg都出现了重复访问的情况,因此需要针对每一次的访问,都生成对应的主节点或者副节点。
在本实施方式中,针对资源唯一型的资源图而言,主要资源在待建构的资源图中具备唯一性,此时,可以在所述主要资源对应的主节点中添加所述主要资源上述的固有特征,并添加会话特征中表征累计量的会话特征。这样处理的原因在于,由于资源具备唯一性,那么针对同一个资源的多次访问,可以始终体现至同一个节点上,因此,在该节点中可以不断更新表征累计量的会话特征。该表征累计量的会话特征例如可以是资源总访问次数、页面内总的用户动作次数以及非授权访问的总次数等。而在资源不唯一型的资源图中,由于每一次的访问都通常产生一个新的节点,因此节点中无法体现累计量的会话特征。但是,由于每个节点可以对应用户的一次访问,因此在主节点中,除了添加主要资源的固有特征,还可以添加会话特征中表征用户操作行为的会话特征。该表征用户操作行为的会话特征例如可以包括页面的动作序列、鼠标轨迹行为、登陆行为、登出行为、更改请求行为等。需要说明的是,如果辅助资源通过主节点或者副节点的形式表现,那么针对辅助资源的主节点或者副节点,也可以按照资源是否具备唯一性,来添加不同的资源特征。
在本实施方式中,在生成了资源图中的各个节点之后,可以根据网络会话样本中的资源访问情况,在各个节点之间添加节点边,从而完成资源图的构建过程。在实际应用中,节点边也可以分为有向边和无向边。以资源图中的第一节点和第二节点为例,如果节点边为有向边,在通过节点边连接第一节点和第二节点时,可以根据第一节点和第二节点之间的访问跳转序列,依次在所述第一节点和所述第二节点之间添加一条或者多条有向边。例如在图3中,A.html和a.jpg之间,由于存在两个访问跳转序列(1和4),因此可以添加两条有向边。同理,C.html和a.jpg之间也可以添加两条有向边。由于每条有向边仅对应一次跳转过程,因此可以识别所述有向边表征的在所述第一节点和所述第二节点之间的跳转特征,并将所述跳转特征作为所述有向边的边特征。其中,该跳转特征例如可以是请求间隔时间、访问序列号等。
而对于无向边而言,第一节点和第二节点之间就算出现多次跳转,也只会添加一条无向边。例如,在图8中,尽管A.html和a.jpg之间,以及C.html和a.jpg之间存在多次跳转,但也只会通过一条无向边进行连接。这样就相当于原先的多条有向边,被合并为了一条无向边。由于无向边无法准确地表征单次跳转过程,因此以上的条砖特征就不再适合作为无向边的变特征。在实际应用中,若节点边为无向边,可以识别第一节点和第二节点之间各条有向边的边特征,并将所述各条有向边的边特征对应的统计特征作为所述无向边的边特征。例如,A.html和a.jpg之间存在两条有向边,那么这两条有向边可以分别具备各自的边特征。然后,可以计算这多个边特征的平均值、最大值、最小值或者方差等统计特征,这些统计特征便可以作为无向边的边特征。此外,无向边的边特征,还可以针对资源图中的其它统计信息得到。例如,无向边的边特征可以包括合并之前的有向边的条数、该合并之前的有向边的条数与整个资源图中节点之间有向边的平均条数之间的差值等。因此,无向边的边特征,更多的是体现统计特征,而并非是单次跳转访问的特征。
在本实施方式中,在构建出资源图之后,可以利用预设的图算法以及一些其它的算法对资源图进行学习。需要说明的是,资源图中的资源特征,可以是按照数值类型进行处理之后的特征。具体地,预设的图算法例如可以是Graph Convolutional Network、GraphSAGE等算法,结合的其它算法例如可以是Normalization、Pooling、Attention、Dropout等算法。利用图算法对资源图进行特征提取后,可以基于提取的特征训练得到分类模型。
在一个实施方式中,由于图算法对于浅层特征的提取效果不错,但多层图算法的效果不佳,无法学习到更深层的特征,因此为了提高分类模型的训练精度,在利用预设图算法进行特征提取之后,还可以利用预设神经网络算法,对预设图算法提取的图特征再次进行特征提取,并利用再次提取的特征训练得到分类模型。其中,预设神经网络算法例如可以是Fully Connected Layer、Convolutional Neural Network、Recurrent Neural Network等相似或变种算法。这样,通过二次特征提取的方式,可以训练出精度更高的分类模型。
在本实施方式中,当完成了分类模型的训练之后,便可以利用该分类模型进行网络爬虫的检测。具体地,针对获取的待检测的网络会话,可以按照以上对网络会话样本的处理方式,提取所述待检测的网络会话中各个资源的资源特征,并基于提取的所述资源特征,构建所述待检测的网络会话的资源图。然后,可以利用训练后的分类模型,对构建的所述资源图进行预测,以得到所述待检测的网络会话的分类结果。
由上可见,本申请提供的基于图神经网络的网络爬虫检测方法,能够很好地兼容传统机器学习方法及深度学习方法两者较好的特性。采用图的方式进行表达能够很好地兼顾长文本与短文本,使得输入数据不再有上下限的限制,并且能够具备深度学习类似的优良特性,自动抽取特征且容易学习不同网络爬虫间的相关性。对于短文本,由于省去了常见输入数据填充及其它变换方式,从而节省了计算资源且保持了很高的精度水平。对于长文本,不需要进行截断或分段的操作,从而提高了检测效率。在对大量不同的网络爬虫的网络会话进行学习时,能够学习到攻击间的相关性,从而更能够对混合攻击进行检测。
请参阅图9,本申请还提供一种基于图神经网络的网络爬虫检测系统,所述系统包括:
会话样本获取单元,用于获取网络会话样本,所述网络会话样本中包括访问的各个资源;
特征提取单元,用于提取所述网络会话样本中各个所述资源的资源特征,所述资源特征包括所述资源在网站中体现的固有特征和/或用户访问所述资源的会话特征;
资源图训练单元,用于基于提取的所述资源特征,构建所述网络会话样本的资源图,并利用预设图算法对构建的所述资源图进行训练,以通过训练得到的分类模型检测网络爬虫。
请参阅图10,本申请还提供一种基于图神经网络的网络爬虫检测装置,所述基于图神经网络的网络爬虫检测装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,能够实现上述的基于图神经网络的网络爬虫检测方法。
在本申请中,所述存储器可以包括用于存储信息的物理装置,通常是将信息数字化后再以利用电、磁或者光学等方法的媒体加以存储。所述存储器又可以包括:利用电能方式存储信息的装置,如RAM或ROM等;利用磁能方式存储信息的装置,如硬盘、软盘、磁带、磁芯存储器、磁泡存储器或U盘;利用光学方式存储信息的装置,如CD或DVD。当然,还有其他方式的存储器,例如量子存储器或石墨烯存储器等等。
在本申请中,所述处理器可以按任何适当的方式实现。例如,所述处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。
由上可见,本申请一个或者多个实施方式提供的技术方案,可以针对网络会话样本中的资源进行分析,从而判断网络会话样本是否由网络爬虫发起的。具体地,可以提取待分析的各个资源的资源特征,该资源特征除了可以包括资源在网站中的固有特征,还可以包含用户访问该资源时产生的会话特征。针对提取的资源特征,可以构建该网络会话样本的资源图。通过预设图算法对构建的资源图进行训练,可以训练出基于图神经网络的分类模型。后续,利用该分类模型,可以便捷地检测出由网络爬虫发起的网络会话。由于采用了图的形式,因此可以很好地兼顾长文本和短文本,输入分类模型的数据不再有上限和下限的限制,进而提高了网络爬虫的检测效率。
本说明书中的各个实施方式均采用递进的方式描述,各个实施方式之间相同相似的部分互相参见即可,每个实施方式重点说明的都是与其他实施方式的不同之处。尤其,针对系统和装置的实施方式来说,均可以参照前述方法的实施方式的介绍对照解释。
本领域内的技术人员应明白,本发明的实施方式可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施方式、完全软件实施方式、或结合软件和硬件方面的实施方式的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施方式的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施方式而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (16)
1.一种基于图神经网络的网络爬虫检测方法,其特征在于,所述方法包括:
获取网络会话样本,所述网络会话样本中包括访问的各个资源;
提取所述网络会话样本中各个所述资源的资源特征,所述资源特征包括所述资源在网站中体现的固有特征和/或用户访问所述资源的会话特征;
基于提取的所述资源特征,构建所述网络会话样本的资源图,并利用预设图算法对构建的所述资源图进行训练,以通过训练得到的分类模型检测网络爬虫。
2.根据权利要求1所述的方法,其特征在于,获取网络会话样本包括:
获取目标网站的当前网络会话,并解析所述当前网络会话中包含的各个候选资源;
根据所述目标网站的业务需求,从所述各个候选资源中选择目标资源,并将选择的所述目标资源作为网络会话样本中包含的资源。
3.根据权利要求1所述的方法,其特征在于,所述固有特征至少包括资源标识,所述固有特征还包括资源的访问热度、资源的内容类型、资源的信息量、资源的功能属性中的一种;所述会话特征包括资源访问间隔时长、资源或者页面的停留时长、网络会话中的访问序列、用户权项的变化情况、资源访问次数中的一种。
4.根据权利要求1或3所述的方法,其特征在于,在提取所述网络会话样本中各个所述资源的资源特征之后,所述方法还包括:
识别所述资源特征的数值类型,若所述数值类型表征连续型数据,对所述资源特征进行标准化和归一化处理;若所述数值类型表征离散型数据,将所述资源特征转换为特征向量。
5.根据权利要求4所述的方法,其特征在于,在将所述资源特征转换为特征向量时,若对所述资源特征进行标签编码,将标签编码后的数据通过嵌入层转换为特征向量。
6.根据权利要求1所述的方法,其特征在于,构建所述网络会话样本的资源图包括:
在所述网络会话样本中确定主要资源和辅助资源,并生成所述主要资源相对应的主节点;
确定所述辅助资源的表现形式,并在待构建的资源图中生成与所述表现形式相匹配的内容;
在所述待构建的资源图中添加节点边,以构建所述网络会话样本的资源图。
7.根据权利要求6所述的方法,其特征在于,生成所述主要资源相对应的主节点包括:
若所述网络会话样本中包括多个重复的目标主要资源,针对重复的所述目标主要资源,仅生成一个对应的主节点;
或者
若所述网络会话样本中包括多个重复的目标主要资源,针对每个重复的所述目标主要资源,分别生成对应的主节点。
8.根据权利要求6或7所述的方法,其特征在于,在生成所述主要资源相对应的主节点之后,所述方法还包括:
判断所述主要资源在待建构的资源图中是否具备唯一性,若具备唯一性,在所述主要资源对应的主节点中添加所述主要资源的固有特征,并添加会话特征中表征累计量的会话特征;
若不具备唯一性,在所述主要资源对应的主节点中添加所述主要资源的固有特征,并添加会话特征中表征用户操作行为的会话特征。
9.根据权利要求6所述的方法,其特征在于,生成与所述表现形式相匹配的内容包括:
若所述辅助资源的表现形式为附属形式,确定与所述辅助资源同时触发的目标主要资源,并将所述辅助资源的资源特征作为附属特征,添加至所述目标主要资源的主节点中。
10.根据权利要求6所述的方法,其特征在于,生成与所述表现形式相匹配的内容包括:
若所述辅助资源的表现形式为主节点形式,生成所述辅助资源对应的主节点;若所述辅助资源的表现形式为副节点形式,生成所述辅助资源对应的副节点,并将所述副节点连接至与所述辅助资源同时触发的主要资源的主节点上。
11.根据权利要求6所述的方法,其特征在于,在所述待构建的资源图中添加的节点边为有向边或者无向边,其中,当通过节点边连接第一节点和第二节点时:
若所述节点边为有向边,根据所述第一节点和所述第二节点之间的访问跳转序列,依次在所述第一节点和所述第二节点之间添加一条或者多条有向边:
若所述节点边为无向边,在所述第一节点和所述第二节点之间仅添加一条无向边。
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
若所述节点边为有向边,识别所述有向边表征的在所述第一节点和所述第二节点之间的跳转特征,并将所述跳转特征作为所述有向边的边特征;
若所述节点边为无向边,识别所述第一节点和所述第二节点之间各条有向边的边特征,并将所述各条有向边的边特征对应的统计特征作为所述无向边的边特征。
13.根据权利要求1所述的方法,其特征在于,在利用预设图算法对构建的所述资源图进行训练之后,所述方法还包括:
利用预设神经网络算法,对所述预设图算法提取的图特征再次进行特征提取,并利用再次提取的特征训练得到分类模型。
14.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取待检测的网络会话,并提取所述待检测的网络会话中各个资源的资源特征;
基于提取的所述资源特征,构建所述待检测的网络会话的资源图,并利用训练后的分类模型,对构建的所述资源图进行预测,以得到所述待检测的网络会话的分类结果。
15.一种基于图神经网络的网络爬虫检测系统,其特征在于,所述系统包括:
会话样本获取单元,用于获取网络会话样本,所述网络会话样本中包括访问的各个资源;
特征提取单元,用于提取所述网络会话样本中各个所述资源的资源特征,所述资源特征包括所述资源在网站中体现的固有特征和/或用户访问所述资源的会话特征;
资源图训练单元,用于基于提取的所述资源特征,构建所述网络会话样本的资源图,并利用预设图算法对构建的所述资源图进行训练,以通过训练得到的分类模型检测网络爬虫。
16.一种基于图神经网络的网络爬虫检测装置,其特征在于,所述基于图神经网络的网络爬虫检测装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现如权利要求1至14中任一所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010573565.4A CN111858929A (zh) | 2020-06-22 | 2020-06-22 | 一种基于图神经网络的网络爬虫检测方法、系统及装置 |
PCT/CN2020/103937 WO2021258480A1 (zh) | 2020-06-22 | 2020-07-24 | 一种基于图神经网络的网络爬虫检测方法、系统及装置 |
EP20891428.3A EP3958146A4 (en) | 2020-06-22 | 2020-07-24 | METHOD, SYSTEM AND DEVICE FOR DETECTING A WEBCRAWLER WITH GRAPHIC NEURAL NETWORK |
US17/340,080 US20210397924A1 (en) | 2020-06-22 | 2021-06-06 | Web crawler detection method, system and device based on graph neural network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010573565.4A CN111858929A (zh) | 2020-06-22 | 2020-06-22 | 一种基于图神经网络的网络爬虫检测方法、系统及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111858929A true CN111858929A (zh) | 2020-10-30 |
Family
ID=72987900
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010573565.4A Pending CN111858929A (zh) | 2020-06-22 | 2020-06-22 | 一种基于图神经网络的网络爬虫检测方法、系统及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111858929A (zh) |
WO (1) | WO2021258480A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113821705A (zh) * | 2021-08-30 | 2021-12-21 | 湖南大学 | 网页内容的获取方法、终端设备及可读存储介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115378856B (zh) * | 2022-08-15 | 2023-07-14 | 中国科学院深圳先进技术研究院 | 通讯检测方法、设备及存储介质 |
CN115865459B (zh) * | 2022-11-25 | 2023-06-27 | 南京信息工程大学 | 一种基于二次特征提取的网络流量异常检测方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180014038A1 (en) * | 2016-07-07 | 2018-01-11 | Yandex Europe Ag | Method and apparatus for selecting a network resource as a source of content for a recommendation system |
CN108228864A (zh) * | 2018-01-12 | 2018-06-29 | 深圳壹账通智能科技有限公司 | 网络爬虫识别方法、装置、计算机设备和存储介质 |
CN110175278A (zh) * | 2019-05-24 | 2019-08-27 | 新华三信息安全技术有限公司 | 网络爬虫的检测方法及装置 |
CN110532452A (zh) * | 2019-07-12 | 2019-12-03 | 西安交通大学 | 一种基于gru神经网络的新闻网站通用爬虫设计方法 |
CN111191099A (zh) * | 2019-12-30 | 2020-05-22 | 中国地质大学(武汉) | 一种基于社交媒体的用户活动类型识别方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7457801B2 (en) * | 2005-11-14 | 2008-11-25 | Microsoft Corporation | Augmenting a training set for document categorization |
CN106682118A (zh) * | 2016-12-08 | 2017-05-17 | 华中科技大学 | 基于网络爬虫和利用机器学习的社交网站虚假粉丝检测方法 |
CN111143654B (zh) * | 2019-12-25 | 2023-06-16 | 支付宝(杭州)信息技术有限公司 | 辅助识别爬虫的、爬虫识别方法、装置及电子设备 |
-
2020
- 2020-06-22 CN CN202010573565.4A patent/CN111858929A/zh active Pending
- 2020-07-24 WO PCT/CN2020/103937 patent/WO2021258480A1/zh unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180014038A1 (en) * | 2016-07-07 | 2018-01-11 | Yandex Europe Ag | Method and apparatus for selecting a network resource as a source of content for a recommendation system |
CN108228864A (zh) * | 2018-01-12 | 2018-06-29 | 深圳壹账通智能科技有限公司 | 网络爬虫识别方法、装置、计算机设备和存储介质 |
CN110175278A (zh) * | 2019-05-24 | 2019-08-27 | 新华三信息安全技术有限公司 | 网络爬虫的检测方法及装置 |
CN110532452A (zh) * | 2019-07-12 | 2019-12-03 | 西安交通大学 | 一种基于gru神经网络的新闻网站通用爬虫设计方法 |
CN111191099A (zh) * | 2019-12-30 | 2020-05-22 | 中国地质大学(武汉) | 一种基于社交媒体的用户活动类型识别方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113821705A (zh) * | 2021-08-30 | 2021-12-21 | 湖南大学 | 网页内容的获取方法、终端设备及可读存储介质 |
CN113821705B (zh) * | 2021-08-30 | 2024-02-20 | 湖南大学 | 网页内容的获取方法、终端设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2021258480A1 (zh) | 2021-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10785241B2 (en) | URL attack detection method and apparatus, and electronic device | |
CN111885000B (zh) | 一种基于图神经网络的网络攻击检测方法、系统及装置 | |
CN111858929A (zh) | 一种基于图神经网络的网络爬虫检测方法、系统及装置 | |
EP2691848B1 (en) | Determining machine behavior | |
CN104112284B (zh) | 一种图片的相似度检测方法和设备 | |
CN114298417A (zh) | 反欺诈风险评估方法、训练方法、装置及可读存储介质 | |
CN107679626A (zh) | 机器学习方法、装置、系统、存储介质及设备 | |
CN111368289B (zh) | 一种恶意软件检测方法和装置 | |
CN104573130A (zh) | 基于群体计算的实体解析方法及装置 | |
CN111368163B (zh) | 一种爬虫数据的识别方法、系统及设备 | |
CN109600382B (zh) | webshell检测方法及装置、HMM模型训练方法及装置 | |
CN111472751A (zh) | 测井解释方法、知识图谱构建方法及相关装置 | |
CN110619216B (zh) | 一种对抗性网络的恶意软件检测方法及系统 | |
CN110532773B (zh) | 恶意访问行为识别方法、数据处理方法、装置和设备 | |
US20210397924A1 (en) | Web crawler detection method, system and device based on graph neural network | |
CN113282921A (zh) | 一种文件检测方法、装置、设备及存储介质 | |
CN110020134B (zh) | 一种知识服务信息的推送方法、系统、存储介质和处理器 | |
CN115168575A (zh) | 应用于审计领域的主语补全方法及相关设备 | |
CN107766373B (zh) | 图片所属类目的确定方法及其系统 | |
CN105512145A (zh) | 信息分类方法及装置 | |
CN111125588B (zh) | 传播效果图的绘制及评估方法、装置、存储介质及处理器 | |
CN110858852B (zh) | 一种注册域名的获取方法及装置 | |
US20220092214A1 (en) | Data processing systems and methods for automatically detecting target data transfers and target data processing | |
CN112532562A (zh) | 一种对抗性网络的恶意数据流检测方法及系统 | |
CN113179287B (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 |