【发布时间】:2025-12-23 12:30:15
【问题描述】:
我的目标是创建一个系统,该系统将能够获取任何随机文本、提取句子、删除标点符号,然后在裸句(其中一个)上随机替换 NN 或 VB 标记的单词及其词组, holonym 或 synonim 以及来自 WordNet 同义词的相似词。前面还有很多工作要做,但我一开始就有问题。
为此,我使用模式和 TextBlob 包。这就是我到目前为止所做的......
from pattern.web import URL, plaintext
from pattern.text import tokenize
from pattern.text.en import wordnet
from textblob import TextBlob
import string
s = URL('http://www.fangraphs.com/blogs/the-fringe-five-baseballs-most-compelling-fringe-prospects-35/#more-157570').download()
s = plaintext(s, keep=[])
secam = (tokenize(s, punctuation=""))
simica = secam[15].strip(string.punctuation)
simica = simica.replace(",", "")
simica = TextBlob(simica)
simicaTg = simica.words
synsimica = wordnet.synsets(simicaTg[3])[0]
djidja = synsimica.hyponyms()
现在一切都按我想要的方式工作,但是当我尝试从这个 djidja 变量中提取即下位词时,它被证明是不可能的,因为它是一个 Synset 对象,我无论如何都无法操纵它。
知道如何提取下义词列表中报告的单词(即print(djidja[2]) 显示Synset(u'bowler')...那么如何仅从中提取'bowler')?
【问题讨论】:
标签: python nlp wordnet textblob