Python包用于在文件/网址/字符串中查找预定义关键词/标签

0 投票
2 回答
623 浏览
提问于 2025-04-17 07:39

有没有什么Python的库可以把一堆关键词或者标签和某个字符串、文件或者网址进行匹配呢?

具体来说,是想用词干提取或者其他一些同义词的方式来进行匹配。

比如,我预先保存的关键词有:

Ski,

Bike,

Climb

我的文本是:

Skiing in the mountains is great

应该被标记为 Ski

Skiing and mountain biking is fun

应该被标记为 SkiBike

如果我有一个同义词文件,把 Bike 映射到 MTB

MTB is a great way to spend the day

应该被标记为 Bike

2 个回答

0

可以查看Thesaurus(你也可以尝试其他模块,比如synonym模块)。

另外,你可以用in来测试句子中是否包含特定的字符串:

>>> 'Ski' in 'Skiing in the mountains is great'
True
>>> 'Bike' in 'Skiing in the mountains is great'
False
0

我不知道有什么现成的工具可以做到这一点,但其实用普通的Python就很简单。你可以使用标准库里的re(正则表达式)模块。像这样:

import re
key_words =['ski','bike','climb'] 
input = "Skiing and mountain biking is fun"

input_words = input.split()#split on space
[word.lower() for word in input_words]
input_tags =[]
for word in input_words:
   for key in key_words:
      if re.search(key,word):
         input_tags.append(key)

撰写回答