Mediawiki API: как мне перечислить все страницы категории и для каждой страницы показать все ее категории?

Я использую следующий API Викимедиа для отображения всех страниц определенной категории: https://www.mediawiki.org/wiki/API:Categorymembers

Например, https://en.wikipedia.org/w/api.php?action=query&list=categorymembers&cmtitle=Category:Physics

Это дает мне список страниц с заголовком и идентификатором, но я также хотел бы видеть все категории для каждой страницы. Однако, похоже, что для этого не существует cmprop.

cmprop: Which properties to get. (Default: ids|title)

    ids: Page ID
    title: Page title
    sortkey: The sortkey used for sorting in the category (hexadecimal string)
    sortkeyprefix: The sortkey prefix used for sorting in the category (human-readable part of the sortkey) 1.17+
    type: Type that the page has been categorised as (page, subcat or file) 1.17+
    timestamp: Time and date the article was added to the category

Я решил запросить каждую страницу и использовать проп = категории, чтобы получить категории для каждой страницы, но это будет означать очень большое количество запросов. Есть ли лучший способ сделать это?

1 ответ

Ты можешь использовать categorymembers как генератор. Если вы сделаете это, вы можете подать заявку prop=categories:

https://en.wikipedia.org/w/api.php?action=query&generator=categorymembers&gcmtitle=Category:Physics&prop=categories&cllimit=max&gcmlimit=max

Другие вопросы по тегам