Как получить доступ к результатам PetScan программно? - PullRequest
0 голосов
/ 13 января 2020

Я хочу использовать Petscan https://petscan.wmflabs.org/ для поиска статей, относящихся к определенным категориям, и т. Д. c ... Это легко сделать с помощью веб-сайта, который они предоставляют. Мне было интересно, есть ли способ сделать это в Python. Я создаю URL для отправки поискового запроса на основе параметров, заданных пользователем, и он возвращает список заголовков статей в Википедии.

1 Ответ

1 голос
/ 14 января 2020

Если вы создаете запрос, он ссылается на отправленный URL-адрес, который содержит все параметры над таблицей результатов: Ссылка на предварительно заполненную форму для запроса, который вы только что выполнили с автоматическим запуском и без него. PSID: ....

Вот пример того, как вы можете получить программный доступ к запросу и где ответы находятся в возвращенном json:

import requests
import json

petscan = requests.get('https://petscan.wmflabs.org/?max_sitelink_count=&categories=cats&project=wikipedia&language=en&cb_labels_yes_l=1&edits%5Bflagged%5D=both&edits%5Bbots%5D=both&search_max_results=500&cb_labels_any_l=1&cb_labels_no_l=1&format=json&interface_language=en&edits%5Banons%5D=both&ns%5B0%5D=1&&doit=').json()
table = petscan['*'][0]['a']['*']
...