如何从 URL 列表中提取关键字?

数据挖掘 文本 排行 tfidf
2022-03-12 19:15:29

我在一个文本文件中有一堆 URL,例如-

https://www.mycustomer.com/marketing/technology/how-marketers-are-over-simplifying-b2b-buyer-behaviour
https://www.forbes.com/sites/forbesagencycouncil/2018/09/06/how-to-use-content-marketing-to-boost-your-recruiting-efforts
https://www.forbes.com/sites/forbesagencycouncil/2017/02/03/video-marketing-the-future-of-content-marketing
https://www.searchenginejournal.com/seo-content-marketing-strategy/258253
...

从这些 URL 中提取前 10 个关键字的最佳方法是什么(不解析网页)?

我知道 TF-IDF 但这通常需要 atitle和 a body,我还能在这里使用它吗?或者是否有任何其他方法(例如 TextRank)可以在这里更好地工作?

1个回答

urllib parse似乎适合您。有了这个,如果您希望单独处理它们,或者即使您想稍后再次加入它们,您也可以从网络位置和路径中分别提取关键字。

结果应如下所示:

from urllib.parse import urlparse

o = urlparse('https://www.forbes.com/sites/forbesagencycouncil/2018/09/06/how-to-use-content-marketing-to-boost-your-recruiting-efforts')

ParseResult(scheme='https', netloc='www.forbes.com:443', path='sites/forbesagencycouncil/2018/09/06/how-to-use-content-marketing-to-boost-your-recruiting-efforts',
           params='', query='', fragment='')

第二步将与字符串解析和字符串拆分有关,因此类似于

.split("/")
.split("-")

可以很好地将示例 URL 的路径拆分为单词。另外,请记住将每个单词转换为小写。之后,词干提取是一个好主意,以便将所有相关术语归入同一类别。这不是必需的,但这是一个好主意。

最后计算单词的出现次数将为您提供这些 URL 中顶部“关键字”的排名。