CN111881398A - 页面类型确定方法、装置和设备及计算机存储介质 - Google Patents

页面类型确定方法、装置和设备及计算机存储介质 Download PDF

Info

Publication number
CN111881398A
CN111881398A CN202010609129.8A CN202010609129A CN111881398A CN 111881398 A CN111881398 A CN 111881398A CN 202010609129 A CN202010609129 A CN 202010609129A CN 111881398 A CN111881398 A CN 111881398A
Authority
CN
China
Prior art keywords
page
classified
type
keyword
classification
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.)
Granted
Application number
CN202010609129.8A
Other languages
English (en)
Other versions
CN111881398B (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010609129.8A priority Critical patent/CN111881398B/zh
Publication of CN111881398A publication Critical patent/CN111881398A/zh
Application granted granted Critical
Publication of CN111881398B publication Critical patent/CN111881398B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • 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/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • 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/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)

Abstract

本申请公开了一种页面类型确定方法、装置和设备及计算机存储介质,涉及人工智能技术领域,通过对页面的页面渲染准确获取页面中的文本内容,提升页面类型分类的准确性。该方法包括:根据待分类页面的统一资源定位符URL,获取所述待分类页面对应的超级文本标记语言HTML文档;根据所述HTML文档对所述待分类页面进行页面渲染,从渲染后的资源文件中获取所述待分类页面中的文本内容;所述资源文件为呈现所述待分类页面所需的文件;从所述文本内容中提取多个关键字,构建关键字集合;根据所述关键字集合对所述待分类页面进行分类,获得所述待分类页面的页面类型。

Description

页面类型确定方法、装置和设备及计算机存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及人工智能(Artificial Intellegence,AI)技术领域,提供一种页面类型确定方法、装置和设备及计算机存储介质。
背景技术
后台管理系统(Web Management System,WMS)或称管理后台,是网站或者应用(application,APP)的管理系统,通过这个系统,可以方便的管理,发布,维护网站或者应用的内容。
后台管理系统一直是攻击者觊觎的,若是后台管理系统的业务页面在未做安全处理,比如在未清除弱口令、添加验证码或者存在万能口令的情况下直接对外,很容易导致大量的入侵事件。后台管理系统的检测是指从访问页面中检测该页面是否为后台管理系统的页面,从而及时阻止攻击者对后台管理系统的访问,保证后台管理系统的安全,而后台管理系统页面的误检和漏检都可能导致后台管理系统页面被攻击者入侵,影响后台管理系统的安全。
因此,后台管理系统的检测一直是扫描检测很重要的一部分,如何准确检测后台管理系统页面是目前亟待解决的问题。
发明内容
本申请实施例提供一种页面类型确定方法、装置和设备及计算机存储介质,通过对页面的页面渲染准确获取页面中的文本内容,提升页面类型分类的准确性。
一方面,提供一种页面类型确定方法,所述方法包括:
根据待分类页面的统一资源定位符URL,获取所述待分类页面对应的超级文本标记语言HTML文档;
根据所述HTML文档对所述待分类页面进行页面渲染,从渲染后的资源文件中获取所述待分类页面中的文本内容;所述资源文件为呈现所述待分类页面所需的文件;
从所述文本内容中提取多个关键字,构建关键字集合;
根据所述关键字集合对所述待分类页面进行分类,获得所述待分类页面的页面类型。
一方面,提供一种页面类型确定装置,所述装置包括:
页面数据获取单元,用于根据待分类页面的统一资源定位符URL,获取所述待分类页面对应的超级文本标记语言HTML文档,以及根据所述HTML文档对所述待分类页面进行页面渲染,从渲染后的资源文件中获取所述待分类页面中的文本内容;所述资源文件为呈现所述待分类页面所需的文件;
关键字提取单元,用于从所述文本内容中提取多个关键字,构建关键字集合;
分类单元,用于根据所述关键字集合对所述待分类页面进行分类,获得所述待分类页面的页面类型。
可选的,所述页面数据获取单元,用于:
调用Javascript引擎执行所述HTML文档中的Javascript脚本,从Javascript 脚本执行完成得到的资源文件中获取所述Javascript脚本对应的文本内容。
可选的,所述分类单元,用于:
获取所述每一关键字在所述待分类页面中的词频TF,以及所述每一关键字在语料库中的逆向文件频率IDF;所述语料库由训练所述页面分类模型所使用的页面样本和所述页面分类模型已分类的页面组成,所述逆向文件频率是基于所述语料库中包括所述每一关键字的页面的数量,与所述语料库中页面的总数量得到的;
根据所述词频以及所述逆向文件频率,获得所述每一关键字的TF-IDF分数;所述TF-IDF分数用于表征所述每一关键字对所述待分类页面的页面类型分类结果的影响程度;
基于所述TF-IDF分数获取所述每一关键字的数值表示。
可选的,所述分类单元,用于:
针对页面类型集合中的第k种页面类型以及所述关键字集合中的第i个关键字,获取页面类型为所述第k种页面类型时,页面中存在所述第i个关键字的条件概率,得到M×N个条件概率;所述关键字集合包括M个关键字,i为不大于M的正整数;
以及获取页面类型为每一种页面类型的边缘概率,得到N个边缘概率;
基于所述M×N个条件概率与所述N个边缘概率,获取页面为所述待分类页面时,页面类型为页面类型集合中的第k种页面类型的条件概率,得到所述N个条件概率。
可选的,所述页面分类模型用于确定所述待分类页面是否为后台管理系统的页面,所述装置还包括训练单元,用于:
获取被标注为后台管理系统的页面的页面样本组成的正样本集合,和被标注为非后台管理系统的页面的页面样本组成的负样本集合;
基于所述正样本集合与负样本集合进行模型训练得到所述页面分类模型。
可选的,所述装置还包括防护单元,用于:
在所述待分类页面的页面类型为后台管理系统的页面时,确定所述待分类页面是否位于所述后台管理系统的预设页面库中;所述预设页面库中的页面为已登记备案的页面;
若确定所述待分类页面未位于所述预设页面库中,则对所述待分类页面执行安全防护措施;所述安全防护措施包括如下的任意一种或者多种的组合:
将所述待分类页面的风险等级标记为高风险;
对所述待分类页面进行访问限制;
根据所述待分类页面的业务内容,向相应业务人员的终端设备发送通知,以通知业务人员关闭所述待分类页面。
可选的,所述装置还包括更新单元,用于:
根据针对于确认分类结果是否正确进行的反馈操作,确定所述页面分类模型的分类结果是否正确;
在确定分类结果正确时,将所述待分类页面以及所述关键字集合添加至正样本集合中;在确定分类结果不正确时,将所述待分类页面以及所述关键字集合添加至负样本集合中;
通过所述正样本集合与所述负样本集合对所述页面分类模型进行更新训练。
可选的,所述页面数据获取单元,用于:
滤除所述文本内容中的干扰文本与符号,获取由所述关键字组成的词项;
对各所述词项进行分词处理,获取多个关键字,得到所述关键字集合。
一方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一种方法的步骤。
一方面,提供一种计算机存储介质,其上存储有计算机程序指令,该计算机程序指令被处理器执行时实现上述任一种方法的步骤。
一方面,提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述任一种方法的步骤。
本申请实施例中,根据待分类页面的统一资源定位符(Uniform ResourceLocator,URL),获取待分类页面对应的超级文本标记语言(Hyper Text Markup Language,HTML)文档,根据HTML文档对待分类页面进行页面渲染,从渲染后的资源文件中获取待分类页面中的文本内容,从文本内容中提取多个关键字,构建关键字集合,根据关键字集合对待分类页面进行页面类型的分类,获得待分类页面的页面类型。因此,通过浏览器模拟人工对待分类页面进行页面渲染的过程,能够充分准确的获取待分类页面中的文本内容,进而后续基于该文本内容提取的关键字识别获得的页面类型才能够更加准确,提升页面类型确定的准确性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种场景示意图;
图2为本申请实施例提供的页面类型确定方法的流程示意图;
图3为本申请实施例提供的页面处理过程的示意图;
图4为本申请实施例提供的朴素贝叶斯模型的实施流程示意图;
图5为本申请实施例提供的模型训练架构图;
图6为本申请实施例提供的更新训练的流程示意图;
图7为本申请实施例提供的防护架构示意图;
图8为本申请实施例提供的页面类型确定装置的一种结构示意图;
图9为本申请实施例提供的计算机设备的一种结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
为便于理解本申请实施例提供的技术方案,这里先对本申请实施例使用的一些关键名词进行解释:
页面:可以是指通过浏览器打开的网页页面,也可以是指APP中的页面。
页面类型:基于页面的功能划分的类型。例如基于页面是否用于实现后台管理功能,可将页面划分为后台管理系统的页面和非后台管理系统的页面;或者,基于页面的功能也可以增加其他的页面类型,例如页面用于实现程序调试时,页面类型可以为调试页面,如Django的调试页面,或者,页面用于实现框架报错时,页面类型可以为框架报错页面。
HTML文档:HTML文档是基于页面地址加载页面所获得的,为实现页面的页面渲染过程所需的数据。以浏览器加载网页页面为例,HTML文档是浏览器发起超文本传输协议(Hyper Text Transfer Protocol,HTTP)请求之后,服务器返回的HTTP响应中携带的,HTML文档可以用于浏览器进行页面渲染,使得在浏览器中呈现相应页面的内容。
文本内容:是指待分类页面所包括的内容。除待分类页面中本身为文本形式的内容之外,还可以包括待分类页面中如图片等文件中所包括的文本。
页面渲染:页面渲染是指加载页面对应的页面数据之后,利用页面数据进行渲染呈现页面的内容的过程。例如对于浏览器页面渲染过程,通常可以包括解析HTML文档生成文档对象模型(Document Object Model,DOM)树、解析层叠样式表(Cascading StyleSheets,CSS)生成CSS规则树和运行JS (Javascript)脚本这三个过程。
条件概率:或称为后验概率,用于表示事件A在另外一个事件B已经发生条件下的发生概率,条件概率可表示为P(A|B),即在事件B发生条件下事件 A发生的概率”。贝叶斯定理中,存在如下关系:
Figure RE-GDA0002656039520000061
边缘概率:或称为先验概率,用于表示某个事件发生的概率。为了解释边缘概率,需要涉及到联合概率的概念,因而需要先解释一下联合概念。联合概念是指两个事件共同发生的概率,可表示为P(A∩B)或者P(A,B),即事件A与事件B共同发生的概率。边缘概率则是在联合概率中,把最终结果中那些不需要的事件通过合并成它们的全概率,而消去它们,这个过程被称为边缘化 (marginalization),所得到的概率则为边缘概率,例如事件A的边缘概率表示为P(A),事件B的边缘概率表示为P(B)。其中,对离散随机变量可以用求和得全概率,对连续随机变量可以用积分得全概率。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,在不做特别说明的情况下,一般表示前后关联对象是一种“或”的关系。
目前,通过后台管理系统的页面可以很方便实现对应用或者网站的管理或者修改,因此后台管理系统通常都不会对外开放,或者有安全设置的对外开放,以保证后台管理系统的安全。若是后台管理系统的页面在安全性较低的情况下直接对外开放,很容易导致大量的入侵事件。而后台管理系统的检测有助于保证后台管理系统的安全,但是,目前对于后台管理系统的检测过程仅仅是发起 HTTP请求后,通过检验返回数据中是否包含一些关键字来判定是否为后台管理系统的页面,在这种方法中,简单的根据返回数据无法获取页面中的完全数据,进而基于这些内容的判定结果可能是不准确的,并且,目前的扫描识别规则是通过大量人工进行制定的,规则一旦形成,除非人为更改,否则长期处于停滞状态,灵活性差,场景覆盖和规则维护都需要消费大量人工,且规则较为简单,很容易出现误检和漏检的情况,进而可能导致后台管理系统页面被攻击者入侵,影响后台管理系统的安全。
为了进一步提升管理后台的安全性,需要对现有的后台管理系统的检测过程进行改进。其中,考虑到分类依据是后台管理系统的检测过程的第一步,要想使得后续分类过程得到的分类结果准确,那么所提取的分类依据,即从页面数据中得到的相关页面内容必须全面的反映页面的内容。考虑到浏览器对页面的URL进行访问,并进行页面渲染完成后,浏览器就可以呈现该页面的完整画面,也就是说,浏览器加载URL和页面渲染完成后,页面内容是可以完全获取得到的,因此,本申请实施例中,浏览器模拟人工对待分类页面的URL 进行访问,加载待分类页面的HTML文档,并根据HTML文档进行页面渲染,来得到待分类页面中所包括的文本内容,从而根据从文本内容提取的关键字集合实现页面类型的分类。通过浏览器模拟人工对待分类页面进行页面渲染的过程,能够充分准确的获取待分类页面中的文本内容,进而后续基于该文本内容提取的关键字分类获得的页面类型才能够更加准确,提升页面类型确定的准确性。
此外,考虑到目前动态JS网站和应用的数量增长迅速,若是不对HTML 文档中的JS脚本进行执行,则无法获取待分类页面中JS脚本对应的文本内容,即待分类页面的内容无法完整获取,可能使得页面类型确定失效,因此,本申请实施例中,对于页面渲染的过程可包括调用JS引擎执行JS脚本的过程,从而从执行完成获取的资源文件中获取JS脚本对应的文本内容,提升待分类页面中的文本内容的完整性,进而提升页面类型确定的准确性。
本申请实施例中,考虑到现有实现方式中扫描识别规则的局限性,采用基于机器学习(Machine learning,ML)的AI模型来实现对页面类型的分类,通过模型可以自动学习页面特征,进而对页面进行页面类型的分类,同时,引入正负反馈机制配合AI模型训练,大大提升模型分类率,同时提升模型的泛化性能。
在介绍完本申请实施例的设计思想之后,下面对本申请实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本申请实施例而非限定。在具体实施过程中,可以根据实际需要灵活地应用本申请实施例提供的技术方案。
本申请实施例提供的方案可以适用于如图1所示的应用场景中,在该场景中,可以包括页面类型确定设备101、页面服务器102和终端设备103。
其中,页面类型确定设备101是具有一定处理能力的计算机设备,例如可以为个人计算机(personal computer,PC)、笔记本电脑或者服务器等。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器,但并不局限于此。
页面类型确定设备101包括一个或多个处理器1011、存储器1012以及与其他设备交互的I/O接口1013等。此外,页面类型确定设备101还可以配置数据库1014,数据库1014可以用于存储页面分类模型相关数据、语料库相关数据以及页面库相关数据等本申请实施例所需的数据。其中,页面类型确定设备101的存储器1012中可以存储本申请实施例提供的页面类型确定方法的程序指令,这些程序指令被处理器1011执行时能够用以实现本申请实施例提供的页面类型确定方法的步骤,以确定待分类页面的页面类型。
页面服务器102可以为待分类页面所在网站或者应用的后台服务器,终端设备103可以为访问待分类页面的终端设备,或者也可以为与待分类页面中业务相关的相应业务人员的终端设备。
在实际应用过程中,页面类型确定设备101可以在用户访问待分类页面的过程中,从访问流量数据中获取到待分类页面的URL。其中,这个过程可以通过其他监控设备来实现,即在用户访问页面的过程中,通过旁路数据获取的方式获取到访问数据,以从访问数据中获取页面URL,作为待分类页面。页面类型确定设备101则可以浏览器模拟人工对待分类页面的URL进行访问,即向页面服务器102发起HTTP请求,以从页面服务器102获取待分类页面的HTML 文档,并根据HTML文档进行页面渲染,来得到待分类页面中所包括的文本内容,从而基于从文本内容提取的关键字集合实现页面类型的分类。
此外,还可以利用获取的页面经人工标注页面类型后,采用机器学习方法进行模型训练,得到页面分类模型。进而页面类型确定设备101可以利用页面分类模型对页面进行页面类型的分类。页面分类模型的训练可以是页面类型确定设备101来实现,也可以是预先训练好,再将页面分类模型相关参数数据提供给页面类型确定设备101进行使用。
本申请实施例中,当页面类型确定设备101分类得到待分类页面的页面类型后,针对特定类型的页面,如后台管理系统的页面,还可以进一步确定页面是否进行备案,若未备案,则该页面对外可能存在风险,则页面类型确定设备 101可以标记该页面为高风险页面,并通知给相关业务人员。
页面类型确定设备101、页面服务器102和终端设备103之间可以通过一个或者多个网络104进行直接或间接的通信连接。该网络104可以是有线网络,也可以是无线网络,例如无线网络可以是移动蜂窝网络,或者可以是无线保真 (Wireless-Fidelity,WIFI)网络,当然还可以是其他可能的网络,本发明实施例对此不做限制。
当然,本申请实施例提供的方法并不限用于图1所示的应用场景中,还可以用于其他可能的应用场景,本申请实施例并不进行限制。对于图1所示的应用场景的各个设备所能实现的功能将在后续的方法实施例中一并进行描述,在此先不过多赘述。下面,将先对本申请实施例涉及的技术进行简单介绍。
本申请实施例涉及通过云技术(Cloud technology)结合AI技术来实现替代人工进行页面类型分类的过程。
云技术是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。具体而言,本申请实施例除了可以通过实体计算资源执行程序流程,还以及实体存储资源来实现数据存储之外,也可以通过云端提供的计算资源来进行页面类型的分类,并且分类过程中所涉及到的数据均可通过云端提供的存储资源来进行存储。
AI是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理(NatureLanguage processing,NLP)技术以及机器学习/深度学习等几大方向。本申请实施例提供的技术方案主要涉及人工智能的自然语言处理技术以及机器学习/深度学习等技术。
自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。具体而言,本申请实施例中对于页面内容的获取实质上也涉及到自然语言处理,该过程可以理解为通过机器模拟人的感知,对页面内容进行理解,进而将页面中想要提取的内容提取出来。
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。具体而言,本申请实施例中对于页面类型的分类可以通过机器学习得到的页面分类模型来进行。
介绍了本申请实施例涉及的技术之后,下面将结合图1所示的应用场景对本申请实施例的技术方案进行介绍。如图2所示,为本申请实施例提供的页面类型确定方法的流程示意图,该方法可以通过图1中页面类型确定设备101来执行,该方法的流程介绍如下。
步骤201:确定待分类页面。
本申请实施例中,用户在页面进行操作,例如创建页面或者访问页面时,均会与页面服务器产生数据交互,那么可以监控用户与页面服务器之间的数据交互,从而得到多个页面的信息。例如用户在访问页面时,会向页面服务器发起HTTP请求,那么可以在监控到HTTP请求时,获取HTTP请求中页面相关的信息。针对获取到的所有页面,所以进行一定的筛选,再将筛选剩下的页面作为待分类页面,执行后续的页面类型确定的流程。筛选条件可根据具体的情况进行设置。例如,在为了防止后台管理系统对外时,那么需要确定一个页面是否为后台管理系统的页面,那么筛选条件可以设置为筛除已经确定为后台管理系统的页面,这些页面可以根据流量数据中的内容,如用户账户或者页面关键字等可以确定该页面即为后台管理系统的页面,那么则无需进行后续的分类了,而后续的分类可以是针对可能为后台管理系统的页面,但是无法准确确定的这种页面进行。
本申请实施例中,待分类页面的数量可以为一个或者多个,针对每一待分类页面的分类过程是类似的,因此,下面仅一个待分类页面的分类过程为例,对本申请实施例的方案进行介绍。
步骤202:根据待分类页面的URL,获取待分类页面对应的HTML文档。
本申请实施例中,在获取到页面时,则会获取到页面的URL,因此对于各个待分类页面,可以根据页面的URL,通过浏览器模拟人工对待分类页面进行访问的过程,来从页面服务器获取待分类页面对应的HTML文档。
具体的,可以采用谷歌(Google)Chrome浏览器模拟人工对URL进行正常的访问。当然,也可以采用其他可能的浏览器,本申请对此不做限制。
步骤203:根据HTML文档对待分类页面进行页面渲染,从渲染后的资源文件中获取待分类页面中的文本内容。
本申请实施例中,获得HTML文档后,可以通过浏览器根据HTML文档来执行页面渲染的过程,从而得到待分类页面的渲染后的资源文件。一般而言,浏览器页面渲染的过程是将页面的HTML转化为可视化界面的过程,因而页面渲染可以获取到页面中所有可获取的内容,因此,基于渲染后的资源文件来获取待分类页面中的文本内容是更加全面的。
具体的,可通过浏览器对HTML文档进行执行,并在监听到浏览器执行完毕之后,获取浏览器渲染之后资源文件中的文本内容。
一般而言,编程语言分为编译型语言和解释型语言两类,编译型语言在执行之前要先进行完全编译,而解释型语言一边编译一边执行,JS就是一种解释型脚本语言,支持动态类型、弱类型、基于原型的语言,并且目前动态JS网站和应用的数量增长迅速,因此若是不对HTML文档中的JS脚本进行执行,则无法获取待分类页面中JS脚本对应的文本内容,即待分类页面的内容无法完整获取,可能使得页面类型确定失效,因此,本申请实施例中,页面渲染的过程可包括调用JS引擎执行HTML文档中的JS脚本的过程,以从Javascript 脚本执行完成得到的资源文件中获取Javascript脚本对应的文本内容,以提升待分类页面中的文本内容的完整性,进而提升页面类型确定的准确性。
本申请实施例中,文本内容可以包括页面中的纯文本内容,也可以对图片进行文本识别得到的文本内容。
本申请实施例中,上述步骤202和203的过程可以是调用外部的浏览器来执行,也可以通过内置的浏览器模块来执行。
步骤204:从文本内容中提取多个关键字,构建关键字集合。
本申请实施例中,文本内容中可能包括与页面类型确定无关的内容,即文本内容中可能存在干扰文本与符号,例如HTML中的标签名称、标点符号以及表情等,因此,在获取到文本内容之后,可以通过一定的页面处理过程对文本内容进行处理。
具体的,页面处理过程的作用主要在于筛除文本内容中无用的代码等干扰因素,之后将页面进行分词,得到一系列的英文单词和中文单词。页面处理过程可以包括干扰文本与符号筛除和分词处理两大过程。其中,干扰文本与符号筛除主要筛除文本内容中所有特殊符号,例如中英文标点符号、表情以及颜文字等特殊字符,以及筛除HTML中的标签名称,如title、data或者div等,干扰文本与符号筛除剩余的则为关键词组成的词项;分词处理用于对词项进行分割,当词项为英文长句或者短句时,将英文长句或者短句分割为每个单词,当词项为中文长句或者短句时,将中文长句或者短句分割为每个单词。具体的,中文分词可以通过常见中文分词库进行划分,例如结巴(jieba)分词等。
页面处理过程的结果是一系列的英文单词和中文单词,通过这一系列的英文单词和中文单词,即可构成关键字组合。
步骤205:根据关键字集合对待分类页面进行页面类型的分类,获得待分类页面的页面类型。
本申请实施例中,可以通过关键字进行匹配来确定待分类页面是否为后台管理系统的页面,由于通过上述过程能够提取到足够多的关键字,因此,通过这些关键字构成的关键字集合确定页面类型能够更加准确。
具体的,还可以利用已训练的页面分类模型对待分类页面进行页面类型的分类,来获得待分类页面的页面类型。页面分类模型进行页面类型确定的具体过程将在后续进行介绍,在先不过多赘述。
为方便页面分类模型对关键字集合进行处理,可以对关键字集合进行编码,以将关键字集合从文本类型转换为数值类型。具体的,编码方法可以采用词频-逆向文件频率(term frequency-inverse document frequency,TF-IDF)算法、词袋模型或者词向量(word2vec)模型等方法,当然,也可以采用其他可能的方法,本申请实施例对此不做限制。
以TF-IDF算法进行编码为例,针对关键字集合中的每一关键字进行编码时,获取该关键字在待分类页面中的词频,以及该关键字在语料库中的逆向文件频率,语料库可以由训练页面分类模型所使用的页面样本和页面分类模型已分类的页面组成,逆向文件频率在可以是基于语料库中包括的该关键字的页面的数量,与语料库中页面的总数量得到的。词频和逆向文件频率的计算公式分别如下:
Figure RE-GDA0002656039520000151
其中,TFij为关键词i在待分类页面中的词频,ni,j为关键词i在待分类页面j中出现的次数,∑knk,j则是待分类页面j中所有关键词出现的次数总和。
Figure RE-GDA0002656039520000152
其中,IDFi为关键词i在语料库中的逆向文件频率,|D|表示语料库中的页面总数,|{j:ti∈dj}|表示语料库中包含关键词i的页面数目。一般而言,如果包含关键词i的页面越少,则关键词i的IDF越大,也就表明关键词i具有很好的类别区分能力,关键词i对于分类结果的影响程度更高。如果关键词i不在语料库中,就会导致上述公式的分母为零,因此,可以使用|{j:ti∈dj}|+1作为分母。
根据词频以及逆向文件频率,可以获得每一关键字的TF-IDF分数,并基于TF-IDF分数获取每一关键字的数值表示。具体的,TF-IDF分数可以为词频与逆向文件频率的乘积,并可以将TF-IDF分数作为关键词的数值表示。TF-IDF 分数能够表征每一关键字对待分类页面的页面类型确定结果的影响程度,一般而言,一个关键词的词频越高,逆向文件频率越低,该关键词越适合分类,即对于待分类页面的页面类型确定结果的影响程度越大。
如图3所示,对于一页面A,通过上述过程,可得到页面A中文本形式的关键字组合,如图3所示的“企业”、“A”、“管理”以及“系统”等词,并通过对各关键字进行编码,则可以得到数值表示的关键字组合,如图3所示的“数值a”等,以便输入至页面分类模型进行处理。需要说明的是,图3中是为了呈现页面A中的内容,而在实际应用过程中,页面A实质上并不需要呈现图3 所示的可视化界面。
下面,将对通过页面分类模型进行页面类型确定的具体过程进行介绍。本申请实施例中,页面分类模型可以为基于朴素贝叶斯算法的页面分类模型,当然,也可以采用其他可能的算法模型,如支持向量机(Support Vector Machine, SVM)算法、K最近邻(K-NearestNeighbor,KNN)算法或者循环神经网络 (Recurrent Neural Network,RNN)算法,本申请实施例对此不做限制。下面以基于朴素贝叶斯算法的页面分类模型为例,对本申请的技术方案进行介绍。
朴素贝叶斯算法的复杂度不高,应用于页面类型的分类,可以有效的提升页面分类的速度。朴素贝叶斯算法思想在于,对于一个待分类页面,可以求解页面为待分类页面时,页面类型为各种页面类型的条件概率,即在待分类页面出现的条件下各个页面类型出现的条件概率,哪个条件概率最大,就认为此待分类页面属于哪种页面类型。朴素贝叶斯分类原理如下:
假设X={a1,a2,…,am}为一个待分类页面,a1,a2,…,am中每一个a为待分类页面X的一个关键词,C={y1,y2,…,yn}为页面类型集合,y1,y2,…,yn中每一个y为一种页面类型,那么为了获取待分类页面的页面类型,需要计算待分类页面出现的条件下各个页面类型出现的条件概率,即需要计算P(y1|X), P(y2|X),…,P(yn|X),当P(yk|X)=max{P(y1|X),P(y2|X),…,P(yn|X)}时,则存在X∈yk
请参见图4,为朴素贝叶斯模型的实施流程示意图,一般而言,朴素贝叶斯模型的实施流程可以包括准备阶段、训练阶段和分类阶段这三个阶段。
本申请实施例中,在朴素贝叶斯模型的准备阶段,用于准备训练所需的页面样本集合,可以包括步骤401和步骤402两个过程。
步骤401:获取页面样本集合。
页面样本可以从现有的页面中进行选择。具体的,当页面分类模型用于确定待分类页面是否为后台管理系统的页面时,则页面样本集合可以包括由后台管理系统的页面的页面样本组成的正样本集合,和由非后台管理系统的页面的页面样本组成的负样本集合,进而通过正样本集合和负样本集合进行后续的训练过程。其中,每一个页面样本包括从一个页面中提取得到的关键字集合。具体的,获取每一页面样本的关键字集合在图2所示的实施例中已经介绍,在此不再赘述。
步骤402:为每一页面样本打上标签。
针对每一页面样本,通过人工标注的方式为每个页面样本打上标签,该标签用于标识页面样本的页面类型。例如对于上述正样本集合和负样本集合而言,则会为正样本集合中的每一页面样本打上用于表征页面为后台管理系统的页面的标签,同理,会为负样本集合中的每一页面样本打上用于表征页面为非后台管理系统的页面的标签。
页面样本进行特征预处理,如对关键字进行编码后则可以投入模型进行训练,因此,页面样本的选择对朴素贝叶斯模型的性能有着重要影响,朴素贝叶斯模型的质量很大程度上由页面样本质量决定。
下面,将进入朴素贝叶斯模型的训练阶段。
本申请实施例中,为了计算待分类页面出现的条件下各个页面类型出现的各个条件概率,可通过如下过程来得到:
在页面样本集合中,各待分类页面的标签是已知的,因此可以统计得到在各页面类型下各关键字出现的条件概率。具体的,针对页面类型集合中的第k 种页面类型以及关键字集合中的第i个关键字,获取页面类型为所述第k种页面类型时,页面中存在所述第i个关键字的条件概率P(ai|yk),则可以得到M ×N个条件概率,具体如下:
P(a1|y1),P(a2|y1),…,P(am|y1)
P(a1|y2),P(a2|y2),…,P(am|y2)
P(a1|yn),P(a2|yn),…,P(am|yn)
其中,k为不大于N的正整数,i为不大于M的正整数。
在贝叶斯定理中,假设A为类别,B为特征,假设各关键字之间是条件独立的,则存在如下关系:
Figure RE-GDA0002656039520000181
其中,P(A)表示每种类别分布的概率,P(B|A)表示在某种类别前提下,特征B出现的概率,P(A|B)表示特征B出现,并且它属于某一类别的概率,通俗地说在特征B出现的前提下类别A出现的概率,等于A和B都出现的概率除以B出现的概率。
那么在本申请实施例中,则存在如下关系:
Figure RE-GDA0002656039520000182
由于分母P(X)对于所有类别皆为常数,故只要将分子P(X|yk)P(yk)最大,
Figure RE-GDA0002656039520000184
则为最大值,且因为各关键词之间是条件独立的,所以存在如下关系:
Figure RE-GDA0002656039520000183
其中,yk为第k种页面类型,aj为关键字集合中的第j个关键字。
其中,P(yk)与P(aj|yk)可以通过上面的过程统计得到,因此,则可以计算得到P(X|yk)P(yk)。可见,朴素贝叶斯模型在训练阶段,主要在于得到各页面类型的边缘概率,以及在各页面类型时各关键字出现的条件概率,即可以包括,可以包括步骤403和步骤404两个过程。
步骤403:获得各页面类型的边缘概率。
具体的,针对每一种页面类型,获取页面类型为该种页面类型的边缘概率,则可得到N个边缘概率。
步骤404:获得各页面类型时各关键字出现的条件概率。
在朴素贝叶斯模型的训练阶段中,将计算每种页面类型在页面样本中的出现频率,作为各页面类型的边缘概率,以及,计算每个关键字对每种页面类型的条件概率估计,并将结果记录,作为朴素贝叶斯模型的分类参数。即朴素贝叶斯模型的训练阶段的输入是页面样本集合,输出是基于朴素贝叶斯模型的分类器。
下面,将进入朴素贝叶斯模型的分类阶段。
在基于朴素贝叶斯模型的分类器训练得到后,则可以将分类器应用与实际待分类页面的分类,其输入是分类器和待分类页面,输出是待分类页面与页面类型的映射关系。那么,在朴素贝叶斯模型的分类阶段中,可以包括步骤405 和步骤406两个过程。
步骤405:针对每种页面类型,获得该种页面类型的边缘概率与该种页面类型下待分类页面出现的条件概率。
本申请实施例中,针对第k种页面类型,获取页面为待分类页面时,页面类型为页面类型集合中的第k种页面类型的条件概率P(yk|X),k=1,2,…,N,得到N个条件概率P(y1|X),P(y2|X),…,P(yn|X),当P(yk|X)最大时,则yk则为待分类页面的页面类型。
而P(yk|X)为最大值时,P(X|yk)P(yk)也为最大值,因此可以使用 P(X|yk)P(yk)表示P(yk|X),且在训练阶段包括的步骤403和步骤404中,已经获得了各页面类型的边缘概率和各页面类型时各关键字出现的条件概率,那么就可以直接利用上面的公式
Figure RE-GDA0002656039520000191
计算得到 P(X|yk)P(yk)。
步骤406:输出待分类页面的页面类型。
在针对每一页面类型,得到P(X|yk)P(yk)之后,则可以从中确定使得 (X|yk)P(yk)为最大值的yk,该yk即为待分类页面的页面类型。或者,根据P(X|yk)P(yk)可以获得P(yk|X),从而根据P(yk|X)的大小确定待分类页面的页面类型。
本申请实施例中,模型训练完成之后,则可以应用到实际待分类页面的分类上,而无需针对于每一个待分类页面的分类时,都进行一次模型的训练,即图4中,在实际应用时,可以仅执行步骤405和步骤406的过程,来得到待分类页面的页面类型。
如图5所示,为本申请实施例提供的针对后台管理系统页面识别场景的模型训练架构图。模型训练的过程实质上是一个机器学习的过程,通过机器学习的方式可以自动学习页面特征,所得到的分类模型的对于后台管理系统页面的识别效果远远优于简单的关键字匹配方案。如图5所示,可以包括模型训练和页面分类过程,在模型训练时,通过采集的大量的管理后台样本和非管理后台样本输入至模型训练模块进行模型训练得到页面分类模型,在需要页面分类时,调用页面分类模型对待分类页面进行分类,得到分类结果,即待分类页面为管理后台页面,或者为非管理后台页面。
当然,模型是需要逐渐优化更新的,从而使得模型的泛化性能更佳。因此,在利用页面分类模型对待分类页面进行页面类型的分类,获得待分类页面的分类结果之后,可以利用正负反馈机制配合模型进行更新训练,即根据反馈确定分类结果的正确性对模型进行反馈指导训练,从而大大提升模型的识别率。如图6所示,为以上述后台管理系统的例子为例,进行更新训练的流程示意图。
步骤601:确定分类结果是否正确。
在针对一个待分类页面进行分类之后,即可知道该页面是否为后台管理系统的页面,并提示进行分类结果的确认,从而根据针对于确认分类结果是否正确进行的反馈操作,确定页面分类模型的各个分类结果是否正确。
步骤602:在步骤601的确定结果为是时,将待分类页面以及待分类页面对应的关键字集合添加至正样本集合中。
步骤603:在步骤601的确定结果为否时,将待分类页面以及待分类页面对应的关键字集合添加至负样本集合中。
步骤604:通过正样本集合与负样本集合对页面分类模型进行更新训练。
对于更新训练,可以是正样本集合和负样本集合中添加的新页面样本的数量足够多时,才进行一次更新训练。更新训练的过程是与上述训练阶段过程类似的,因此在此不再赘述。
本申请实施例中,在获取待分类页面的页面类型之后,则可以将待分类页面的分类结果提供给其他业务使用,如提供给防护模块,以使得防护模块根据待分类页面的分类结果确定是否需要采取安全防护措施,如图7所示,为本申请实施例提供的防护架构示意图,该防护方案通过海量的旁路数据作为页面样本来训练页面分类模型,模型训练成熟后就具有自动判断页面类型的能力。在防护过程中,防护模块保持与页面分类模型通信,防护模块可以负责采集数据,并发送到页面分类模型,页面分类模型来进行页面分类,并把结果发送到防护模块。
如图7所示的防护架构主要包括如下几个过程:
(1)获取多个正样本和负样本,构成页面样本集合。如上述后台管理系统的例子,则可以获取非后台管理系统页面的关键字集合构成的正样本和后台管理系统页面的关键字集合构成的负样本,共同作为页面样本集合。
(2)通过对页面样本集合中的各正样本和各负样本进行编码,可得到数值表示的编码模型,如图7所示的TF-IDF模型。通过TF-IDF对页面样本集合进行进一步的特征提取与编码,将文本类型的页面样本集合转化为数值类型的页面样本集合。
(3)为数值型的各正样本和各负样本分别打上类型标签,用于页面分类模型的训练。
(4)通过各正样本和各负样本不断训练后,得到较为成熟的页面分类模型,训练后的页面分类模型具备了自动识别页面类型的能力。
(5)模型成熟后,将页面分类模型部署在防护架构中用于实际页面类型的判别。具体而言,可利用页面分类模型对实际采集的待分类页面进行分类,得到待分类页面的分类结果,并可进一步将分类结果提供给防护模块,以使得防护模块根据待分类页面的分类结果确定是否需要采取安全防护措施。
以上述后台管理系统的例子为例,当防护模块确定待分类页面的页面类型为后台管理系统的页面时,可以进一步确定待分类页面是否位于后台管理系统的预设页面库中,该预设页面库中的页面为已登记备案的页面,当页面为位于该页面库中时,页面对外开放是不安全的,因此若确定待分类页面未位于预设页面库中,则可以对待分类页面执行安全防护措施。安全防护措施包括如下的任意一种或者多种的组合:
(1)将待分类页面的风险等级标记为高风险。
(2)对待分类页面进行访问限制。
(3)根据待分类页面的业务内容,向相应业务人员的终端设备发送通知,以通知业务人员关闭待分类页面,或者进行其他安全设置,以提升待分类页面的安全性。
综上所述,本申请实施例提供的基于贝叶斯算法的页面分类方案可以作为当前管理后台识别体系的有效扩充和优化,补齐了传统扫描器方案的局限,提升管理后台的识别率。通过页面渲染充分获取页面内容,以及获取的流量数据与机器学习算法结合进行页面识别,识别速度快且识别率高,弥补了传统扫描器扫描周期长,部分管理后台未能及时发现的问题,此外,基于贝叶斯算法的管理后台识别方案具有高识别率,降低人工复检的概率,大大节省人力。
请参见图8,基于同一发明构思,本申请实施例还提供了一种页面类型确定装置80,该装置例如可以应用于图1所示的页面类型确定设备中,该装置包括:
页面数据获取单元801,用于根据待分类页面的统一资源定位符URL,获取待分类页面对应的超级文本标记语言HTML文档,以及根据HTML文档对待分类页面进行页面渲染,从渲染后的资源文件中获取待分类页面中的文本内容;资源文件为呈现待分类页面所需的文件;
关键字提取单元802,用于从文本内容中提取多个关键字,构建关键字集合;
分类单元803,用于根据关键字集合对待分类页面进行分类,获得待分类页面的页面类型。
可选的,页面数据获取单元801,用于:
调用Javascript引擎执行HTML文档中的Javascript脚本,从Javascript脚本执行完成得到的资源文件中获取Javascript脚本对应的文本内容。
可选的,分类单元803,用于:
对关键字集合进行编码,将关键字集合从文本类型转换为数值类型;
根据数值类型的关键字集合,利用已训练的页面分类模型对待分类页面进行页面类型的分类,获得待分类页面的页面类型;其中,页面分类模型是利用多个标注了页面类型的页面样本训练得到的,每一个页面样本包括从一个页面中提取得到的关键字集合。
可选的,分类单元803,用于:
获取每一关键字在待分类页面中的词频TF,以及每一关键字在语料库中的逆向文件频率IDF;语料库由训练页面分类模型所使用的页面样本和页面分类模型已分类的页面组成,逆向文件频率是基于语料库中包括每一关键字的页面的数量,与语料库中页面的总数量得到的;
根据词频以及逆向文件频率,获得每一关键字的TF-IDF分数;TF-IDF分数用于表征每一关键字对待分类页面的页面类型分类结果的影响程度;
基于TF-IDF分数获取每一关键字的数值表示。
可选的,分类单元803,用于:
根据关键字集合,分别获取页面为待分类页面时,页面类型为页面类型集合中的第k种页面类型的条件概率,得到N个条件概率;页面类型集合是由N 种页面类型组成的集合,k为不大于N的正整数;
将N个条件概率中的最大值对应的页面类型确定为待分类页面的页面类型。
可选的,分类单元803,用于:
针对页面类型集合中的第k种页面类型以及关键字集合中的第i个关键字,获取页面类型为第k种页面类型时,页面中存在第i个关键字的条件概率,得到M×N个条件概率;关键字集合包括M个关键字,i为不大于M的正整数;
以及获取页面类型为每一种页面类型的边缘概率,得到N个边缘概率;
基于M×N个条件概率与N个边缘概率,获取页面为待分类页面时,页面类型为页面类型集合中的第k种页面类型的条件概率,得到N个条件概率。
可选的,页面分类模型用于确定待分类页面是否为后台管理系统的页面,装置还包括训练单元804,用于:
获取被标注为后台管理系统的页面的页面样本组成的正样本集合,和被标注为非后台管理系统的页面的页面样本组成的负样本集合;
基于正样本集合与负样本集合进行模型训练得到页面分类模型。
可选的,装置还包括防护单元805,用于:
在待分类页面的页面类型为后台管理系统的页面时,确定待分类页面是否位于后台管理系统的预设页面库中;预设页面库中的页面为已登记备案的页面;
若确定待分类页面未位于预设页面库中,则对待分类页面执行安全防护措施;安全防护措施包括如下的任意一种或者多种的组合:
将待分类页面的风险等级标记为高风险;
对待分类页面进行访问限制;
根据待分类页面的业务内容,向相应业务人员的终端设备发送通知,以通知业务人员关闭待分类页面。
可选的,装置还包括更新单元806,用于:
根据针对于确认分类结果是否正确进行的反馈操作,确定页面分类模型的分类结果是否正确;
在确定分类结果正确时,将待分类页面以及关键字集合添加至正样本集合中;在确定分类结果不正确时,将待分类页面以及关键字集合添加至负样本集合中;
通过正样本集合与负样本集合对页面分类模型进行更新训练。
可选的,页面数据获取单元801,用于:
滤除文本内容中的干扰文本与符号,获取由关键字组成的词项;
对各词项进行分词处理,获取多个关键字,得到关键字集合。
该装置可以用于执行图2~图7所示的实施例中所示的方法,因此,对于该装置的各功能模块所能够实现的功能等可参考图2~图7所示的实施例的描述,不多赘述。
请参见图9,基于同一技术构思,本申请实施例还提供了一种计算机设备 90,可以包括存储器901和处理器902。
所述存储器901,用于存储处理器902执行的计算机程序。存储器901可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据计算机设备的使用所创建的数据等。处理器902,可以是一个中央处理单元(central processing unit,CPU),或者为数字处理单元等等。本申请实施例中不限定上述存储器901和处理器 902之间的具体连接介质。本申请实施例在图9中以存储器901和处理器902 之间通过总线903连接,总线903在图9中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线903可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器901可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器901也可以是非易失性存储器 (non-volatilememory),例如只读存储器,快闪存储器(flash memory),硬盘 (hard disk drive,HDD)或固态硬盘(solid-state drive,SSD)、或者存储器901 是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器901可以是上述存储器的组合。
处理器902,用于调用所述存储器901中存储的计算机程序时执行如图2~图7所示的实施例中设备所执行的方法。
在一些可能的实施方式中,本申请提供的方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在计算机设备上运行时,所述程序代码用于使所述计算机设备执行本说明书上述描述的根据本申请各种示例性实施方式的方法中的步骤,例如,所述计算机设备可以执行如图2~图7所示的实施例中设备所执行的方法。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器 (CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (15)

1.一种页面类型确定方法,其特征在于,所述方法包括:
根据待分类页面的统一资源定位符URL,获取所述待分类页面对应的超级文本标记语言HTML文档;
根据所述HTML文档对所述待分类页面进行页面渲染,从渲染后的资源文件中获取所述待分类页面中的文本内容;所述资源文件为呈现所述待分类页面所需的文件;
从所述文本内容中提取多个关键字,构建关键字集合;
根据所述关键字集合对所述待分类页面进行分类,获得所述待分类页面的页面类型。
2.如权利要求1所述的方法,其特征在于,根据所述HTML文档对所述待分类页面进行页面渲染,从渲染后的资源文件中获取所述待分类页面中的文本内容,包括:
调用Javascript引擎执行所述HTML文档中的Javascript脚本,从Javascript脚本执行完成得到的资源文件中获取所述Javascript脚本对应的文本内容。
3.如权利要求1所述的方法,其特征在于,所述根据所述关键字集合对所述待分类页面进行页面类型的分类,获得所述待分类页面的页面类型,包括:
对所述关键字集合进行编码,将所述关键字集合从文本类型转换为数值类型;
根据数值类型的所述关键字集合,利用已训练的页面分类模型对所述待分类页面进行页面类型的分类,获得所述待分类页面的页面类型;其中,所述页面分类模型是利用多个标注了页面类型的页面样本训练得到的,每一个页面样本包括从一个页面中提取得到的关键字集合。
4.如权利要求3所述的方法,其特征在于,针对所述关键字集合中的每一关键字,对所述关键字集合进行编码,将所述关键字集合从文本类型转换为数值类型,包括:
获取所述每一关键字在所述待分类页面中的词频TF,以及所述每一关键字在语料库中的逆向文件频率IDF;所述语料库由训练所述页面分类模型所使用的页面样本和所述页面分类模型已分类的页面组成,所述逆向文件频率是基于所述语料库中包括所述每一关键字的页面的数量,与所述语料库中页面的总数量得到的;
根据所述词频以及所述逆向文件频率,获得所述每一关键字的TF-IDF分数;所述TF-IDF分数用于表征所述每一关键字对所述待分类页面的页面类型分类结果的影响程度;
基于所述TF-IDF分数获取所述每一关键字的数值表示。
5.如权利要求3所述的方法,其特征在于,根据数值类型的所述关键字集合,利用已训练的页面分类模型对所述待分类页面进行页面类型的分类,获得所述待分类页面的页面类型,包括:
根据所述关键字集合,分别获取页面为所述待分类页面时,页面类型为页面类型集合中的第k种页面类型的条件概率,得到N个条件概率;所述页面类型集合是由N种页面类型组成的集合,k为不大于N的正整数;
将所述N个条件概率中的最大值对应的页面类型确定为所述待分类页面的页面类型。
6.如权利要求5所述的方法,其特征在于,根据所述关键字集合,分别获取页面为所述待分类页面时,页面类型为页面类型集合中的第k种页面类型的条件概率,得到N个条件概率,包括:
针对页面类型集合中的第k种页面类型以及所述关键字集合中的第i个关键字,获取页面类型为所述第k种页面类型时,页面中存在所述第i个关键字的条件概率,得到M×N个条件概率;所述关键字集合包括M个关键字,i为不大于M的正整数;
以及获取页面类型为每一种页面类型的边缘概率,得到N个边缘概率;
基于所述M×N个条件概率与所述N个边缘概率,获取页面为所述待分类页面时,页面类型为页面类型集合中的第k种页面类型的条件概率,得到所述N个条件概率。
7.如权利要求3~6任一所述的方法,其特征在于,所述页面分类模型用于确定所述待分类页面是否为后台管理系统的页面,则所述页面分类模型是利用多个标注了页面类型的页面样本训练得到,包括:
获取被标注为后台管理系统的页面的页面样本组成的正样本集合,和被标注为非后台管理系统的页面的页面样本组成的负样本集合;
基于所述正样本集合与负样本集合进行模型训练得到所述页面分类模型。
8.如权利要求7所述的方法,其特征在于,在根据数值类型的所述关键字集合,利用已训练的页面分类模型对所述待分类页面进行页面类型的分类,获得所述待分类页面的页面类型之后,所述方法还包括:
在所述待分类页面的页面类型为后台管理系统的页面时,确定所述待分类页面是否位于所述后台管理系统的预设页面库中;所述预设页面库中的页面为已登记备案的页面;
若确定所述待分类页面未位于所述预设页面库中,则对所述待分类页面执行安全防护措施;所述安全防护措施包括如下的任意一种或者多种的组合:
将所述待分类页面的风险等级标记为高风险;
对所述待分类页面进行访问限制;
根据所述待分类页面的业务内容,向相应业务人员的终端设备发送通知,以通知业务人员关闭所述待分类页面。
9.如权利要求3~6任一所述的方法,其特征在于,在根据数值类型的所述关键字集合,利用已训练的页面分类模型对所述待分类页面进行页面类型的分类,获得所述待分类页面的页面类型之后,所述方法还包括:
根据针对于确认分类结果是否正确进行的反馈操作,确定所述页面分类模型的分类结果是否正确;
在确定分类结果正确时,将所述待分类页面以及所述关键字集合添加至正样本集合中;在确定分类结果不正确时,将所述待分类页面以及所述关键字集合添加至负样本集合中;
通过所述正样本集合与所述负样本集合对所述页面分类模型进行更新训练。
10.如权利要求1所述的方法,其特征在于,从所述文本内容中提取关键字,构建关键字集合,包括:
滤除所述文本内容中的干扰文本与符号,获取由所述关键字组成的词项;
对各所述词项进行分词处理,获取多个关键字,得到所述关键字集合。
11.一种页面类型确定装置,其特征在于,所述装置包括:
页面数据获取单元,用于根据待分类页面的统一资源定位符URL,获取所述待分类页面对应的超级文本标记语言HTML文档,以及根据所述HTML文档对所述待分类页面进行页面渲染,从渲染后的资源文件中获取所述待分类页面中的文本内容;所述资源文件为呈现所述待分类页面所需的文件;
关键字提取单元,用于从所述文本内容中提取多个关键字,构建关键字集合;
分类单元,用于根据所述关键字集合对所述待分类页面进行分类,获得所述待分类页面的页面类型。
12.如权利要求11所述的装置,其特征在于,所述分类单元,用于:
对所述关键字集合进行编码,将所述关键字集合从文本类型转换为数值类型;
根据数值类型的所述关键字集合,利用已训练的页面分类模型对所述待分类页面进行页面类型的分类,获得所述待分类页面的页面类型;其中,所述页面分类模型是利用多个标注了页面类型的页面样本训练得到的,每一个页面样本包括从一个页面中提取得到的关键字集合。
13.如权利要求12所述的装置,其特征在于,所述分类单元,用于:
根据所述关键字集合,分别获取页面为所述待分类页面时,页面类型为页面类型集合中的第k种页面类型的条件概率,得到N个条件概率;所述页面类型集合是由N种页面类型组成的集合,k为不大于N的正整数;
将所述N个条件概率中的最大值对应的页面类型确定为所述待分类页面的页面类型。
14.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,
所述处理器执行所述计算机程序时实现权利要求1至10任一项所述方法的步骤。
15.一种计算机存储介质,其上存储有计算机程序指令,其特征在于,
该计算机程序指令被处理器执行时实现权利要求1至10任一项所述方法的步骤。
CN202010609129.8A 2020-06-29 2020-06-29 页面类型确定方法、装置和设备及计算机存储介质 Active CN111881398B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010609129.8A CN111881398B (zh) 2020-06-29 2020-06-29 页面类型确定方法、装置和设备及计算机存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010609129.8A CN111881398B (zh) 2020-06-29 2020-06-29 页面类型确定方法、装置和设备及计算机存储介质

Publications (2)

Publication Number Publication Date
CN111881398A true CN111881398A (zh) 2020-11-03
CN111881398B CN111881398B (zh) 2024-02-09

Family

ID=73157319

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010609129.8A Active CN111881398B (zh) 2020-06-29 2020-06-29 页面类型确定方法、装置和设备及计算机存储介质

Country Status (1)

Country Link
CN (1) CN111881398B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112882619A (zh) * 2021-02-08 2021-06-01 维沃移动通信有限公司 应用界面的管理方法、装置、电子设备及介质
CN113177151A (zh) * 2021-05-28 2021-07-27 中山世达模型制造有限公司 一种潜在客户筛选方法
CN113342335A (zh) * 2021-05-11 2021-09-03 北京大学 快应用页面选择方法、装置、设备及存储介质
CN113806667A (zh) * 2021-09-26 2021-12-17 上海交通大学 一种支持网页分类的方法和系统

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8380693B1 (en) * 2011-09-07 2013-02-19 Google Inc. System and method for automatically identifying classified websites
CN103731434A (zh) * 2014-01-21 2014-04-16 国家电网公司 一种针对非授权访问的安全防范方法
CN103810293A (zh) * 2014-02-28 2014-05-21 广州云宏信息科技有限公司 基于Hadoop的文本分类方法及装置
CN103838798A (zh) * 2012-11-27 2014-06-04 阿里巴巴集团控股有限公司 页面分类系统及页面分类方法
CN106685938A (zh) * 2016-12-16 2017-05-17 杭州迪普科技股份有限公司 一种为登录页面生成防护配置的方法和装置
CN107122664A (zh) * 2016-02-24 2017-09-01 阿里巴巴集团控股有限公司 安全防护方法及装置
CN107491453A (zh) * 2016-06-13 2017-12-19 北京搜狗科技发展有限公司 一种识别作弊网页的方法及装置
CN109753566A (zh) * 2019-01-09 2019-05-14 大连民族大学 基于卷积神经网络的跨领域情感分析的模型训练方法
CN110413908A (zh) * 2018-04-26 2019-11-05 维布络有限公司 基于网站内容对统一资源定位符进行分类的方法和装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8380693B1 (en) * 2011-09-07 2013-02-19 Google Inc. System and method for automatically identifying classified websites
CN103838798A (zh) * 2012-11-27 2014-06-04 阿里巴巴集团控股有限公司 页面分类系统及页面分类方法
CN103731434A (zh) * 2014-01-21 2014-04-16 国家电网公司 一种针对非授权访问的安全防范方法
CN103810293A (zh) * 2014-02-28 2014-05-21 广州云宏信息科技有限公司 基于Hadoop的文本分类方法及装置
CN107122664A (zh) * 2016-02-24 2017-09-01 阿里巴巴集团控股有限公司 安全防护方法及装置
CN107491453A (zh) * 2016-06-13 2017-12-19 北京搜狗科技发展有限公司 一种识别作弊网页的方法及装置
CN106685938A (zh) * 2016-12-16 2017-05-17 杭州迪普科技股份有限公司 一种为登录页面生成防护配置的方法和装置
CN110413908A (zh) * 2018-04-26 2019-11-05 维布络有限公司 基于网站内容对统一资源定位符进行分类的方法和装置
CN109753566A (zh) * 2019-01-09 2019-05-14 大连民族大学 基于卷积神经网络的跨领域情感分析的模型训练方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112882619A (zh) * 2021-02-08 2021-06-01 维沃移动通信有限公司 应用界面的管理方法、装置、电子设备及介质
CN113342335A (zh) * 2021-05-11 2021-09-03 北京大学 快应用页面选择方法、装置、设备及存储介质
CN113177151A (zh) * 2021-05-28 2021-07-27 中山世达模型制造有限公司 一种潜在客户筛选方法
CN113806667A (zh) * 2021-09-26 2021-12-17 上海交通大学 一种支持网页分类的方法和系统
CN113806667B (zh) * 2021-09-26 2023-10-03 上海交通大学 一种支持网页分类的方法和系统

Also Published As

Publication number Publication date
CN111881398B (zh) 2024-02-09

Similar Documents

Publication Publication Date Title
CN111371806B (zh) 一种Web攻击检测方法及装置
CN111881398B (zh) 页面类型确定方法、装置和设备及计算机存储介质
EP3522078A1 (en) Explainable artificial intelligence
CN105426356B (zh) 一种目标信息识别方法和装置
CN111625715B (zh) 信息提取方法、装置、电子设备及存储介质
CN114462616A (zh) 用于防止敏感数据在线公开的机器学习模型
CN113986864A (zh) 日志数据处理方法、装置、电子设备及存储介质
CN111931935A (zh) 基于One-shot学习的网络安全知识抽取方法和装置
CN115757991A (zh) 一种网页识别方法、装置、电子设备和存储介质
CN113918794B (zh) 企业网络舆情效益分析方法、系统、电子设备及存储介质
CN112052424A (zh) 一种内容审核方法及装置
CN108595466B (zh) 一种互联网信息过滤以及互联网用户信息和网帖结构分析方法
CN113297525A (zh) 网页分类方法、装置、电子设备、及存储介质
CN112926341A (zh) 文本数据处理方法、装置
KR102166390B1 (ko) 비정형 데이터의 모델링 방법 및 시스템
CN116774973A (zh) 数据渲染方法、装置、计算机设备及存储介质
CN116776889A (zh) 一种基于图卷积网络和外部知识嵌入的粤语谣言检测方法
KR102483004B1 (ko) 유해 url 탐지 방법
CN113806667B (zh) 一种支持网页分类的方法和系统
CN116049597A (zh) 网页的多任务模型的预训练方法、装置及电子设备
CN114579876A (zh) 虚假信息检测方法、装置、设备及介质
Qureshi et al. Detecting social polarization and radicalization
CN110413909B (zh) 基于机器学习的大规模嵌入式设备在线固件智能识别方法
CN115964478A (zh) 网络攻击检测方法、模型训练方法及装置、设备及介质
CN113657092A (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
GR01 Patent grant
GR01 Patent grant