我必须找到> 200字的定义。我想使用维基百科来搜索带有列表中给定单词的文章,然后提取其定义的原始文本(文章的第一句)。
事实上,在我的项目中,我有一个包含单词(简单和组合)的Jlist。我想找到每个单词使用维基百科的定义(我选择了这个百科全书,因为这些单词是从专门的语料库中提取的)。
我的问题是:如何从Wikipedia转储中检索定义?我找到了JWPL,但我没有找到一个帮助我使用它的例子。
另一个问题是:如果我将Wikipedia脱机(使用WikiTaxi),我如何使用Java从中提取定义?
维基百科是创意 - 普通许可(请参阅他们的terms of use允许的内容)
维基百科已经有了一个API,它可能比你开发自己的目的更好。有关API here的更多信息。
值得考虑的另一件事是,如果你想要定义,或许你最好使用wiktionary? Wiktionary also has their own API
这是一个示例API调用,以获取有关“堆栈溢出”的wiki文本
http://en.wikipedia.org/w/api.php?action=query&prop=revisions&titles=stack_overflow&rvprop=content
这是一个从wiktionary返回单词“stack”的示例查询:
http://en.wiktionary.org/w/api.php?action=query&prop=revisions&titles=stack&rvprop=content
您可能仍需要解析输出,但它可以获得您想要的...
如果你想做一个快速而又脏的屏幕抓取,他们的URL很容易构建。网址基本上是http://en.wikipedia.org/wiki/
+一个已消毒的单词(例如用_等替换的空格)
在现场组成的一个示例网址是http://en.wikipedia.org/wiki/Stack_overflow,它将直接带您到维基百科上的Stack Overflow条目。
维基百科中的正文内容从此评论<!-- bodycontent -->
开始,并包含在具有此id的div中:mw-content-ltr
您可能正在寻找第一个<p>
标记。