Как Wikipedia расспарсить картинки имея список слов?

Есть список слов на английском ['2019–20 COVID-19 pandemic',' 1918-1920 flu pandemic',' COVID-19',' Black Death',' coronavirus',' Italy',' pandemic',' SARS-CoV-2',' 2009 flu pandemic',' 2020 coronavirus pandemic in Italy']

Например тема: COVID-19 "https://pl.wikipedia.org/wiki/" Если вписать в Wikipedia вместо "" слово "COVID-19" перенаправляет на страницу, нормально или на похожую страницу, откуда можно расспарсить картинки пример работы с Wikipedia

Но если написать "2009 flu pandemic" или "2009_flu_pandemic". То не найдет такой страницы.

Вопросы 1) Как имея такой список слов найти либо точные статьи или похожие, но найти? 2) Слышала что есть mediawiki, может как-то через него?


Ответы (1 шт):

Автор решения: nomnoms12

Для таких целей можно воспользоваться MediaWiki API.
А для удобства взаимодействия использовать модуль-обёртку wikipedia.

Пример:

import wikipedia


QUERY = '2009 flu pandemic'
wikipedia.set_lang('en')

results = wikipedia.search(QUERY)
print(results)

stdout:

['2009 flu pandemic', '2009 flu pandemic in Europe', '2009 flu pandemic timeline', '2009 flu pandemic by country', '2009 flu pandemic vaccine', '2009 flu pandemic tables', '2009 flu pandemic in Asia', '2009 flu pandemic in India', '2009 flu pandemic in the United States', '2009 flu pandemic in Canada']

Обратите внимание на то, что можно выбрать язык: wikipedia.set_lang('en').


Получить URL самого релевантного результата можно так:

ny = wikipedia.page(results[0])
print(ny.url)

stdout:

https://en.wikipedia.org/wiki/2009_flu_pandemic
→ Ссылка