CN107169121A - 一种提取网站url的方法 - Google Patents

一种提取网站url的方法 Download PDF

Info

Publication number
CN107169121A
CN107169121A CN201710389460.1A CN201710389460A CN107169121A CN 107169121 A CN107169121 A CN 107169121A CN 201710389460 A CN201710389460 A CN 201710389460A CN 107169121 A CN107169121 A CN 107169121A
Authority
CN
China
Prior art keywords
url
field
paths
group
url paths
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
CN201710389460.1A
Other languages
English (en)
Other versions
CN107169121B (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.)
Beijing Future Information Technology Co Ltd
Original Assignee
Beijing Future Information 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 Future Information Technology Co Ltd filed Critical Beijing Future Information Technology Co Ltd
Priority to CN201710389460.1A priority Critical patent/CN107169121B/zh
Publication of CN107169121A publication Critical patent/CN107169121A/zh
Application granted granted Critical
Publication of CN107169121B publication Critical patent/CN107169121B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]

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 Transfer Between Computers (AREA)

Abstract

本发明公开了一种提取网站URL的方法。本方法为:1)从网站访问日志中提取出URL路径;2)对提取的URL路径去重,然后统计每一URL路径的字段个数;3)按字段个数将URL路径分成多组;4)针对每一组URL路径,合并组内所有URL路径的字段列表,去重后统一编号;然后根据统一编号结果将组内每一URL路径转换成一向量,形成该组URL路径的矩阵;然后对该矩阵进行聚类,如果聚类结果中的URL路径个数超过设定阈值,则对该聚类结果进行聚合处理,识别出该聚类结果中的可变字段并将其替换为同一值;5)将各组URL路径合并形成该网站的URL路径列表。本发明可自动化的从网站海量访问日志中还原网站的所有URL。

Description

一种提取网站URL的方法
技术领域
本发明涉及一种提取网站URL的方法,属于网络技术领域。
背景技术
某些场景下,对网站海量访问日志进行分析时,需要从中提取出网站URL列表,然后根据网站URL列表采样访问日志进行分析。
网站URL中部分字段可能是可变的,例如:/abc/def/123/index.html,/abc/def/456/index.html,/abc/def/789/index.html等,其中第三个字段是用户ID。此种情况,其实只有一个URL,即:/abc/def/*/index.html,“*”代表可变。
发明内容
针对现有技术中存在的技术问题,本发明的目的在于提供一种提取网站URL的方法。
本发明的技术方案为:
一种提取网站URL的方法,其步骤为:
1)从网站访问日志中提取出URL路径;
2)对提取的URL路径进行去重,然后统计每一URL路径的字段个数;
3)按字段个数将URL路径分成多组,同一组内的所有URL路径的字段个数相同;
4)针对每一组URL路径,合并组内所有URL路径的字段列表,去重后统一编号;然后根据统一编号结果将组内每一URL路径转换成一向量,形成该组URL路径的矩阵;然后对该矩阵进行聚类,如果某一聚类结果中的URL路径个数超过设定阈值,则对该聚类结果进行聚合处理,识别出该聚类结果中的可变字段并将其替换为同一值;所述可变字段为同一聚类结果的各URL路径中,字段位置相同但字段值是可变的字段;
5)将步骤4)处理后的各组URL路径合并形成该网站的URL路径列表。
进一步的,根据统一编号结果将组内每一URL路径转换成一向量的方法为:设合并组内所有URL路径的字段列表中的字段个数为n,然后确定该字段列表中每一字段在向量中的位置并设置一对应编号;对于每一URL路径,将该URL路径中每一字段设置一位置编号;然后对于组内的每一URL路径,从向量的第一个位置开始,遍历该URL路径,如果该URL路径存在与对应位置的字段,则向量的该位置取值为对应编号,否则该位置设置为0,生成该URL路径的向量。
进一步的,将该URL路径中每一字段设置一位置编号的方法为:将该URL路径中第i个字段的位置编号设置为i。
进一步的,所述步骤2)中,将每一URL路径按照“/”分割,得到字段列表,然后统计得到该URL路径的字段个数。
进一步的,使用层次化的聚类算法对矩阵进行聚类。
本发明采用基于层次化的聚类(Hierarchical Clustering;http://bluewhale.cc/2016-04-19/hierarchical-clustering.html或http://blog.pluskid.org/?p=407)。从网站海量日志中提取网站URL path列表,提取步骤如下:
1.从网站访问日志每一行中提取出一URL path,然后整体去重。
2.将URL path按照“/”分割,得到字段列表,然后统计字段个数。
3.按字段个数将所有URL path分成多组,组内的所有URL path的字段个数相同。
4.针对每一组URL path,合并组内所有URL path的字段列表,去重后统一编号。
5.遍历组内URL path,将URL path的字段列表根据统一编号结果转换成向量。例如所有字段编号为{“a”:1,“b”:2,“c”:3,“d”:4},即“a”在向量中的位置为1,“b”在向量中的位置为2。如果URL1的字段列表为[“c”,“d”,“b”],则URL1转换后的向量为[0,3,1,2](“a”不存在,所以向量第1个元素为0;“b”在URL1的位置为3,因此向量第2个元素为3;“c”在URL1的位置为1,因此向量第3个元素为1;“d”在字段列表中的位置为2,因此向量第4个元素为2)。
6.组内所有URL path的字段列表转换成向量后,形成一个矩阵。
7.使用层次化的聚类算法对矩阵做聚类。
8.处理聚类结果:聚类结果可能会将不包含可变字段的多个URL path聚成一类,此时可以通过同一类别包含的URL path个数做判断,如果URL path个数较少,则说明不包含可变字段,此类别中的URL path不需要聚合;如果个数较多,则说明包含可变字段,将此类别中的URL path做聚合处理,例如“/a/b/*/d.html”,即第三个字段为任意字符串。其中,可变字段为同一聚类结果的各URL路径中,字段位置相同但字段值是可变的字段。通过统计各个字段位置的字段值个数,将个数较多的变为*即可。
9.将所有组的URL path合并形成总的URL path列表。
与现有技术相比,本发明的积极效果为:
本发明可以自动化的从网站海量访问日志中还原网站的所有URL,包括某些字段可变的URL。
附图说明
图1为本发明方法的流程图。
具体实施方式
下面结合附图,对优选实施例作详细说明。应该强调的是下述说明仅仅是示例性的,而不是为了限制本发明的范围及其应用。
如图1所示,本发明的流程为:
1、提取URL path
网站访问日志中一般包括:时间戳、源IP、源端口、目的IP、目的端口、主机名、URL、User Agent、Cookie。
URL的语法格式为:protocol://hostname[:port]/path/[;parameters][?query]#fragment。
从每一行网站访问日志中提取出URL,截取出path部分。
对所有提取出的URL path做去重处理。
2、提取字段
将URL path按“/”分割得到字段列表。
统计URL path的字段个数。
依次处理每一个URL path,得到每一个URL path的字段列表和字段个数。
3、分组
按字段个数将所有URL path分成多组,组内的所有URL path的字段个数相同。
4、字段编号
针对每一组URL path,合并组内所有URL path的字段列表,去重后统一编号。
例如:/abc/def/123/index.html,/abc/def/456/index.html,/abc/def/789/index.html,去重后统一编号的结果如下所示:
5、生成向量
遍历组内URL path,将URL path的字段列表根据统一编号结果转换成向量。假设字段总数为N,则向量为N维向量。向量的每一维的值等于对应的字段在URL path的位置,如果在URL path中不存在,则位置为0。
例如:/abc/def/123/index.html,/abc/def/456/index.html,/abc/def/789/index.html,生成的向量如表1所示:
表1为向量表
URL path abc def 123 456 789 index.html
/abc/def/123/index.html 1 2 3 0 0 4
/abc/def/456/index.html 1 2 0 3 0 4
/abc/def/789/index.html 1 2 0 0 3 4
组内所有URL path的字段列表转换成向量后,形成一个矩阵,如表1所示。
6、聚类
使用层次化的聚类算法对矩阵做聚类。层次化的聚类算法有开源实现,例如scipy.cluster.hierarchy,请参考:https://docs.scipy.org/doc/scipy-0.19.0/reference/generated/scipy.cluster.hierarchy.fclusterdata.html。
7、处理聚类结果
聚类结果可能会将不包含可变字段的多个URL path聚成一类,此时可以通过同一类别包含的URL path个数做判断。
如果同一类别的URL path个数较少,例如小于1000,则说明不包含可变字段,此类别中的URL path不需要聚合。
如果同一类别的URL path个数较多,例如大于等于1000,则说明包含可变字段,将此类别中的URL path做聚合处理,例如“/a/b/*/d.html”,即第三个字段为任意字符串。
8、合并
将所有组的聚类后的URL path合并形成总的新URL path列表。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (5)

1.一种提取网站URL的方法,其步骤为:
1)从网站访问日志中提取出URL路径;
2)对提取的URL路径进行去重,然后统计每一URL路径的字段个数;
3)按字段个数将URL路径分成多组,同一组内的所有URL路径的字段个数相同;
4)针对每一组URL路径,合并组内所有URL路径的字段列表,去重后统一编号;然后根据统一编号结果将组内每一URL路径转换成一向量,形成该组URL路径的矩阵;然后对该矩阵进行聚类,如果某一聚类结果中的URL路径个数超过设定阈值,则对该聚类结果进行聚合处理,识别出该聚类结果中的可变字段并将其替换为同一值;所述可变字段为同一聚类结果的各URL路径中,字段位置相同但字段值是可变的字段;
5)将步骤4)处理后的各组URL路径合并形成该网站的URL路径列表。
2.如权利要求1所述的方法,其特征在于,根据统一编号结果将组内每一URL路径转换成一向量的方法为:设合并组内所有URL路径的字段列表中的字段个数为n,然后确定该字段列表中每一字段在向量中的位置并设置一对应编号;对于每一URL路径,将该URL路径中每一字段设置一位置编号;然后对于组内的每一URL路径,从向量的第一个位置开始,遍历该URL路径,如果该URL路径存在与对应位置的字段,则向量的该位置取值为该字段在URL路径中的位置编号,否则该位置设置为0,生成该URL路径的向量。
3.如权利要求2所述的方法,其特征在于,将该URL路径中每一字段设置一位置编号的方法为:将该URL路径中第i个字段的位置编号设置为i。
4.如权利要求1或2或3所述的方法,其特征在于,所述步骤2)中,将每一URL路径按照“/”分割,得到字段列表,然后统计得到该URL路径的字段个数。
5.如权利要求1或2或3所述的方法,其特征在于,使用层次化的聚类算法对矩阵进行聚类。
CN201710389460.1A 2017-05-27 2017-05-27 一种提取网站url的方法 Active CN107169121B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710389460.1A CN107169121B (zh) 2017-05-27 2017-05-27 一种提取网站url的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710389460.1A CN107169121B (zh) 2017-05-27 2017-05-27 一种提取网站url的方法

Publications (2)

Publication Number Publication Date
CN107169121A true CN107169121A (zh) 2017-09-15
CN107169121B CN107169121B (zh) 2020-08-11

Family

ID=59820953

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710389460.1A Active CN107169121B (zh) 2017-05-27 2017-05-27 一种提取网站url的方法

Country Status (1)

Country Link
CN (1) CN107169121B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109359250A (zh) * 2018-08-31 2019-02-19 阿里巴巴集团控股有限公司 统一资源定位符处理方法、装置、服务器及可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103823892A (zh) * 2014-03-10 2014-05-28 北京奇虎科技有限公司 确定网页聚类模式的方法及装置
JP2016006606A (ja) * 2014-06-20 2016-01-14 ログリー株式会社 広告配信サーバ
CN106294815A (zh) * 2016-08-16 2017-01-04 晶赞广告(上海)有限公司 一种url的聚类方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103823892A (zh) * 2014-03-10 2014-05-28 北京奇虎科技有限公司 确定网页聚类模式的方法及装置
JP2016006606A (ja) * 2014-06-20 2016-01-14 ログリー株式会社 広告配信サーバ
CN106294815A (zh) * 2016-08-16 2017-01-04 晶赞广告(上海)有限公司 一种url的聚类方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
沙泓州: "面向大规模网络流量的URL实时分类关键技术研究", 《中国博士学位论文全文数据库 信息科技辑》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109359250A (zh) * 2018-08-31 2019-02-19 阿里巴巴集团控股有限公司 统一资源定位符处理方法、装置、服务器及可读存储介质

Also Published As

Publication number Publication date
CN107169121B (zh) 2020-08-11

Similar Documents

Publication Publication Date Title
CN110471916B (zh) 数据库的查询方法、装置、服务器及介质
Borders et al. Chimera: A declarative language for streaming network traffic analysis
Li et al. A supervised machine learning approach to classify host roles on line using sflow
US20170039214A1 (en) Data analysis using multiple systems
Cui et al. A session-packets-based encrypted traffic classification using capsule neural networks
CN104579823A (zh) 一种基于大数据流的网络流量异常检测系统及方法
Li Application of CART decision tree combined with PCA algorithm in intrusion detection
CN108768986A (zh) 一种加密流量分类方法及服务器、计算机可读存储介质
CN109088903A (zh) 一种基于流式的网络异常流量检测方法
Perera Jayasuriya Kuranage et al. Network traffic classification using machine learning for software defined networks
US11140123B2 (en) Community detection based on DNS querying patterns
CN105471670A (zh) 流量数据分类方法及装置
CN104767736A (zh) 将未知单协议数据流分离为不同类型的数据帧的方法
CN106446217A (zh) 大数据高速整合系统
US20230252140A1 (en) Methods and systems for identifying anomalous computer events to detect security incidents
Loo et al. Online incremental learning for high bandwidth network traffic classification
WO2018047027A1 (en) A method for exploring traffic passive traces and grouping similar urls
EP3804228A1 (en) Distributed and timely network flow summarization at scale
CN101916281A (zh) 并行计算系统及去重计数方法
Wang et al. Fast and accurate traffic measurement with hierarchical filtering
CN117914599A (zh) 基于图神经网络的移动网络恶意流量识别方法
Loo et al. Online network traffic classification with incremental learning
CN107169121A (zh) 一种提取网站url的方法
US11848959B2 (en) Method for detecting and defending DDoS attack in SDN environment
CN108494620A (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
CP02 Change in the address of a patent holder

Address after: Room 301, Unit 1, 3rd Floor, Building 15, No.1 Courtyard, Gaolizhang Road, Haidian District, Beijing, 100080

Patentee after: BEIJING KNOW FUTURE INFORMATION TECHNOLOGY CO.,LTD.

Address before: 100102 room 112102, unit 1, building 3, yard 1, Futong East Street, Chaoyang District, Beijing

Patentee before: BEIJING KNOW FUTURE INFORMATION TECHNOLOGY CO.,LTD.

CP02 Change in the address of a patent holder