CN107169121A - 一种提取网站url的方法 - Google Patents
一种提取网站url的方法 Download PDFInfo
- 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
Links
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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval 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中部分字段可能是可变的,例如:/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所述的方法,其特征在于,使用层次化的聚类算法对矩阵进行聚类。
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109359250A (zh) * | 2018-08-31 | 2019-02-19 | 阿里巴巴集团控股有限公司 | 统一资源定位符处理方法、装置、服务器及可读存储介质 |
Citations (3)
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的聚类方法及装置 |
-
2017
- 2017-05-27 CN CN201710389460.1A patent/CN107169121B/zh active Active
Patent Citations (3)
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)
Title |
---|
沙泓州: "面向大规模网络流量的URL实时分类关键技术研究", 《中国博士学位论文全文数据库 信息科技辑》 * |
Cited By (1)
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 |