Python 中的 Arabic Word Net 同义词?

Arabic Word Net synonyms in Python?

我正在使用 python 2.7,我正在尝试使用 Arabic WordNet

获取阿拉伯语单词的同义词

我下载了两个需要的文件:

  1. AWNDatabaseManagement.py
  2. upc_db.xml

基于,我在AWNDatabaseManagement.py中做了一些编辑:

  1. 第 320 行是 opts['i']='upc_db.xml' 而不是

    选项['i']='E:/usuaris/horacio/arabicWN/AWNdatabase/upc_db.xml'

  2. 我在最后添加了wn.get_synsets_from_word(u"جَمِيل")

  3. 我在第 2 行添加了:# -*- coding: utf-8 -*-

然后我 运行 它使用:$ python AWNDatabaseManagement.py -i upc_db.xml 并且没有发现错误:<open file 'upc_db.xml', mode 'r' at 0x10156c270>

然而,当我 运行 我的原始 py 文件时:

from nltk.corpus import wordnet as wn
jan = wn.synsets('wait')[0]
print(jan) #this works fine
print(jan.lemma_names(lang='arb')) #this works fine

wn.get_synsets_from_word(u"جَمِيل")

我得到:

`Synset('delay.n.01') [u'\u0627\u0650\u0646\u0652\u062a\u0650\u0638\u0627\u0631', u'\u062a\u0623\u062c\u0650\u064a\u0644', u'\u062a\u0623\u062e\u0650\u064a\u0631', u'\u062a\u0648\u0642\u0651\u064f\u0641'] Traceback (most recent call last): File "C:/Users/PycharmProjects20Dec.py" line 492, in <module> wn.get_synsets_from_word("جَمِيل") AttributeError: 'WordNetCorpusReader' object has no attribute 'get_synsets_from_word`

真不知道是什么问题

A​​rabic Wordnet 独立于 nltk 工作。在您有 AWNDatabaseManagement.pyupc_db.xml 的文件夹中,放入您的脚本并将其更改为:

from AWNDatabaseManagement import wn
synsets = wn.get_synsetids_from_word(u"جَمِيل")
for s in synsets:
    wn._items[s].describe()

输出将是:

itemid  jamiyl_a1AR
offset  300218842
name  جَمِيل
type  synset
pos  a
input links  [[u'be_in_state', u'jamaAl_n1AR'], [u'near_antonym', u'qabiyH_a1AR']]
output links  [[u'near_antonym', u'qabiyH_a1AR']]