wikitools,维基百科和python

时间:2011-07-05 23:09:56

标签: python django mediawiki wikipedia

有没有人有使用wikitools for python(和django)获取维基百科页面的经验?我试图得到这篇文章,但我得到了一些第一行,就是这样。我需要获取整篇文章,我似乎无法弄明白。文档也不是很有帮助。我的代码是:

wikiobj = wiki.Wiki("http://en.wikipedia.org/w/api.php?title=Some_Title&action=raw&maxlag=-1") 
wikipage = page.Page(wikiobj, url, section='content')
wikidata = wikipage.getWikiText(True).decode('utf-8', 'replace')

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

我在我的项目中使用wikitools,而不是在页面上获取文本,但我以不同的方式初始化wiki对象:

wikiobj = wiki.Wiki("http://en.wikipedia.org/w/api.php")
wikipage = page.Page(wikiobj, title="Some_Title")

您不需要在Wiki类中api.php之后提供任何查询。

接下来,看看Page class:

的定义
__init__(self, site, title=False, check=True, followRedir=True, section=False, sectionnumber=False, pageid=False, namespace=False)

所以你需要为Page类的构造函数提供标题(你提供了一些未知的url参数)。