Could use a little push. I'm trying to use the 'wikipedia' module to pull information for various topics to use with my custom voice assistant. I'm running into issues when Wikipedia has a redirect I think. See examples:
import wikipedia
result = wikipedia.summary("Thomas Cruise", sentences = 2)
print(result)
Output:
Thomas Cruise Mapother IV (born July 3, 1962) is an American actor. Regarded as a Hollywood icon, he has received various accolades, including an Honorary Palme d'Or and three Golden Globe Awards, in addition to nominations for four Academy Awards.
But when I change to the more popular name of 'Tom Cruise' I get this:
import wikipedia
result = wikipedia.summary("Tom Cruise", sentences = 2)
print(result)
Output:
Homelab:/config/tmp# python3 wiki.py
Traceback (most recent call last):
File "/config/tmp/wiki.py", line 2, in <module>
result = wikipedia.summary("Tom Cruise", sentences = 2)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/wikipedia/util.py", line 28, in __call__
ret = self._cache[key] = self.fn(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/wikipedia/wikipedia.py", line 231, in summary
page_info = page(title, auto_suggest=auto_suggest, redirect=redirect)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/wikipedia/wikipedia.py", line 276, in page
return WikipediaPage(title, redirect=redirect, preload=preload)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/wikipedia/wikipedia.py", line 299, in __init__
self.__load(redirect=redirect, preload=preload)
File "/usr/local/lib/python3.12/site-packages/wikipedia/wikipedia.py", line 345, in __load
raise PageError(self.title)
wikipedia.exceptions.PageError: Page id "tom raise" does not match any pages. Try another id!
Unfortunately my Python skills are not great and I can't really figure out why this is not working. I know if I search 'Tom Cruise' on the main wikipedia page it will redict to the correct page and that page is even called "https://en.wikipedia.org/wiki/Tom_Cruise"
Any help is most appreciated.
Thanks for @fjsevilla for the fix:
auto_suggest=False needed