请问有人能告诉我在哪里可以下载英语词典的txt或xml文件吗? 我正在为自己建立一个简单的应用程序,希望找到一些可以立即使用而无需学习复杂API的东西。
如果支持同义词将非常好,也就是说,应该更容易检索特定单词的所有同义词。
如果词典可以列出英式和美式拼写不同的单词,那真是太棒了。
即使只是小型词典(几千个单词),那也没关系,因为我只需要它来完成一个小项目。
如果价格合理并且词典易于使用 - 简单的XML将非常好 - 我甚至愿意购买一个。
请指点方向。
请问有人能告诉我在哪里可以下载英语词典的txt或xml文件吗? 我正在为自己建立一个简单的应用程序,希望找到一些可以立即使用而无需学习复杂API的东西。
如果支持同义词将非常好,也就是说,应该更容易检索特定单词的所有同义词。
如果词典可以列出英式和美式拼写不同的单词,那真是太棒了。
即使只是小型词典(几千个单词),那也没关系,因为我只需要它来完成一个小项目。
如果价格合理并且词典易于使用 - 简单的XML将非常好 - 我甚至愿意购买一个。
请指点方向。
WordNet是你所需要的工具。它包含超过10万个词条,并且可以免费获取。
但是,它并不以XML格式存储。为了访问数据,你需要使用现有的WordNet API之一来选择你所使用的编程语言。
通常使用API很简单,因此我认为你不必担心“学习复杂的API”。例如,参考基于Python的自然语言工具包(NLTK)的WordNet How to:
>>> from nltk.corpus import wordnet
>>>
>>> # Get All Synsets for 'dog'
>>> # This is essentially all senses of the word in the db
>>> wordnet.synsets('dog')
[Synset('dog.n.01'), Synset('frump.n.01'), Synset('dog.n.03'),
Synset('cad.n.01'), Synset('frank.n.02'),Synset('pawl.n.01'),
Synset('andiron.n.01'), Synset('chase.v.01')]
>>> # Get the definition and usage for the first synset
>>> wn.synset('dog.n.01').definition
'a member of the genus Canis (probably descended from the common
wolf) that has been domesticated by man since prehistoric times;
occurs in many breeds'
>>> wn.synset('dog.n.01').examples
['the dog barked all night']
>>> # Get antonyms for 'good'
>>> wordnet.synset('good.a.01').lemmas[0].antonyms()
[Lemma('bad.a.01.bad')]
>>> # Get synonyms for the first noun sense of 'dog'
>>> wordnet.synset('dog.n.01').lemmas
[Lemma('dog.n.01.dog'), Lemma('dog.n.01.domestic_dog'),
Lemma('dog.n.01.Canis_familiaris')]
>>> # Get synonyms for all senses of 'dog'
>>> for synset in wordnet.synsets('dog'): print synset.lemmas
[Lemma('dog.n.01.dog'), Lemma('dog.n.01.domestic_dog'),
Lemma('dog.n.01.Canis_familiaris')]
...
[Lemma('frank.n.02.frank'), Lemma('frank.n.02.frankfurter'),
...
尽管WordNet存在美式英语偏差,但它支持英式拼写和用法。例如,您可以查询“colour”,而“lift”的其中一个同义词集是“elevator.n.01”。
关于XML的注释
如果将数据表示为XML至关重要,则可以轻松使用其中一个API访问WordNet数据库并将其转换为XML格式,例如请参见Thinking XML: Querying WordNet as XML。
我知道这个问题已经很老了,但我自己也遇到了找文本文件的问题,因此如果有人正在寻找同义词和反义词文本文件数据库,可以尝试使用最简单但非常详细的网址链接。
我以前使用过Roget's thesaurus。它在纯文本文件中提供了同义词信息。还有一些Java代码可以帮助您解析文本。
这些页面提供了许多可免费下载的词库/词汇资源的链接。
http://www.w3.org/2001/sw/Europe/reports/thes/thes_links.html
http://www-a2k.is.tokushima-u.ac.jp/member/kita/NLP/lex.html