我使用python2.7和wikipedia包从多个随机的wikipedia页面检索文本,如docs中所述。在
我使用以下代码
def get_random_pages_summary(pages = 0):
import wikipedia
page_names = [wikipedia.random(1) for i in range(pages)]
return [[p,wikipedia.page(p).summary] for p in page_names]
text = get_random_pages_summary(50)
得到以下错误
File "/home/user/.local/lib/python2.7/site-packages/wikipedia/wikipedia.py", line 393, in __load raise DisambiguationError(getattr(self, 'title', page['title']), may_refer_to) wikipedia.exceptions.DisambiguationError: "Priuralsky" may refer to: Priuralsky District Priuralsky (rural locality)
我要做的是得到文本。从维基百科的随机页面,我需要它只是普通文本,没有任何标记
我假设问题是在搜索Wikipedia页面时获取一个有多个选项的随机名称。 当我用它得到一个维基百科页面时。效果很好。在
谢谢
根据文档(http://wikipedia.readthedocs.io/en/latest/quickstart.html),错误将返回多个候选页,因此您需要再次搜索该候选页。在
你可以像这样改进你的代码。在
^{pr2}$当你用Wikipedia的API(不是用不同的工具直接拉HTML)来处理随机文章时,我的建议是捕捉消歧错误并重新随机文章,以防发生这种情况。在
相关问题 更多 >
编程相关推荐