You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何禁用wikipedia-1.4.0 API中的字符串处理功能?

问题

使用wikipedia==1.4.0库时,调用wikipedia.page()接口会自动对输入的标题字符串做处理修改。例如执行以下代码:

import wikipedia
wikipedia.page('Backstreet Boys')

返回如下错误:

PageError                                 Traceback (most recent call last)
Cell In[3], line 1
----> 1 wikipedia.page('Backstreet Boys')

File ~/miniconda3/lib/python3.9/site-packages/wikipedia/wikipedia.py:276, in page(title, pageid, auto_suggest, redirect, preload)
    273     except IndexError:
    274       # if there is no suggestion or search results, the page doesn't exist
    275       raise PageError(title)
--> 276   return WikipediaPage(title, redirect=redirect, preload=preload)
    277 elif pageid is not None:
    278   return WikipediaPage(pageid=pageid, preload=preload)

File ~/miniconda3/lib/python3.9/site-packages/wikipedia/wikipedia.py:299, in WikipediaPage.__init__(self, title, pageid, redirect, preload, original_title)
    296 else:
    297   raise ValueError("Either a title or a pageid must be specified")
--> 299 self.__load(redirect=redirect, preload=preload)
    301 if preload:
    302   for prop in ('content', 'summary', 'images', 'references', 'links', 'sections'):

File ~/miniconda3/lib/python3.9/site-packages/wikipedia/wikipedia.py:345, in WikipediaPage.__load(self, redirect, preload)
    343 if 'missing' in page:
    344   if hasattr(self, 'title'):
--> 345     raise PageError(self.title)
    346   else:
    347     raise PageError(pageid=self.pageid)

PageError: Page id "back street boys" does not match any pages. Try another id!

如何禁用该库的字符串处理功能?

解决方案

  • 关闭自动建议参数:wikipedia.page()默认开启auto_suggest=True,会触发维基百科搜索建议并修改标题。设置auto_suggest=False即可直接使用原始标题请求:

    import wikipedia
    page = wikipedia.page('Backstreet Boys', auto_suggest=False)
    
  • 直接实例化WikipediaPage:如果第一种方法不生效,直接创建WikipediaPage实例并指定original_title锁定原始标题:

    from wikipedia import WikipediaPage
    page = WikipediaPage(title='Backstreet Boys', original_title='Backstreet Boys')
    
  • 验证效果:通过page.title确认实际使用的是原始输入标题:

    print(page.title)  # 输出: Backstreet Boys
    

内容的提问来源于stack exchange,提问作者alvas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 15:23:12