在分析了许多 URL 后,我试图识别新模式。因此,假设我正在调查假设的网站 Yoohle.com,它们的 URL 具有以下结构。
- 域 = yoohle.com
- q= 搜索词组
- lan= 使用的语言
- 公关=合作伙伴ID
- br = browser_id
所以一个示例网址看起来像这样
www.yoohle.com/test_folder/test_page?q=hello+world&lan=en&pr=stackoverflow&br=chrome
如果我正在调查该网站的网络流量并看到逐月异常增加,我想找出造成这种情况的原因。在这个例子中,我可以只解析 URL 并查看 pr= 值,因为它会告诉我是否有新的合作伙伴关系(也许 stackoverflow 将由 yoohle.com 提供支持并推动增长等)
问题是,我如何构建可以比较 2 个月(或更多)个月并准确告诉我推动增长的因素。我想得到类似的东西,“我们看到了增长,它是由以下模式驱动的”
www.yoohle.com/test_folder/test_page%pr=stackoverflow%
棘手的部分是,与此示例不同,您对令牌的含义一无所知,因为我不知道什么令牌代表 partner_id。另一个问题是,如果我们逐个标记,这将产生误导,因为假设用户仍将使用英语作为语言,lan=en 也会与新的合作伙伴一起使用。
我的想法是通过查看所有组合来分析令牌,但这非常昂贵(在这个例子中是 4!,对于其他网站可能是 10+!)。同样分析令牌本身也不能解决问题,因为我仍然需要分析令牌的值。
我尝试了 k-means 聚类,先验算法对 URL/文本挖掘做了一些研究,但无法得到我想要的。任何关于如何构建算法的想法都是有益的。
想象一下,您正在查看实时数据,因此我们正在讨论在给定月份分析大约 10 万个 URL。