首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何解决在python中读取Wikipedia API页面错误?

如何解决在python中读取Wikipedia API页面错误?
EN

Stack Overflow用户
提问于 2021-05-11 20:00:42
回答 1查看 85关注 0票数 1

我正在做一个文档摘要NLP项目,所以我想从维基百科中提取Elon Musk的传记。我试图在维基百科库(API)的帮助下将其提取出来,

我首先尝试了页面标题(例如,Elon Musk),但它给我一个页面错误PageError: Page id "e on musk" does not match any pages. Try another id!您是否注意到它显示的页面id "e on musk",然后我尝试使用它的页面id编号(即Q317521),这将输出有关某些植物'Matthiola incana'的结果

以下是我的代码

代码语言:javascript
复制
import wikipedia

elon = wikipedia.page('Elon Musk').content
elon
# outputs
PageError: Page id "e on musk" does not match any pages. Try another id!


elon = wikipedia.page('Q317521').content
elon
# outputs (shorted)
Matthiola incana is a species of flowering plant in the cabbage family Brassicaceae. Common names include Brompton stock,

我尝试了Alan turning,它不起作用,也尝试了Albert_Einstein,它显示了奇怪的输出,就像Elon Musk一样。

然而,它与Nikola Tesla,Michio Kaku,Narendra Modi等人一起工作,这表明我没有做错。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-12 20:21:08

wikipedia.page是一种垃圾。它使用维基百科的搜索建议API来转换它的title参数,然后在维基百科上查找它。搜索建议(类似于Google的“你的意思是...?”特性)完全不适合于此目的,它们是最后的努力,通过从常用单词的字典中查找由术语组成的最接近的(在edit distance方面)字符串,将零结果搜索转换为产生结果的搜索。这对于修复拼写错误很有效,绝对不能用于搜索结果,更不用说实际的文章标题了。

您可以使用auto_suggest=false禁用此行为,尽管wikipedia的一半错误报告都是关于此问题的,其中一些几乎可以追溯到解码,您可能想要寻找一个维护得更好的库。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67486332

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档