Получить количество правок, сделанных ботами, зарегистрированными и анонимными пользователями для статьи в Википедии

Я пытаюсь получить количество правок, сделанных ботами, зарегистрированными и анонимными пользователями, разделенными для конкретной статьи в Википедии.

Я знаю, что могу получить все ревизии для статьи с помощью ревизии в MediaWiki API, я думал использовать rvprop = user, чтобы вернуть имя пользователя, который сделал ревизию, и выполнить некоторую обработку полученных данных.

http://ar.wikipedia.org/w/api.php?action=query&prop=revisions&titles=%D8%A7%D8%A8%D9%86%20%D8%A7%D9%84%D9%86%D9%81%D9%8A%D8%B3&rvlimit=500&rvprop=timestamp%7Cuser|size&format=xml

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

1 ответ

Решение

API ревизий позволяет вам перечислить flags для каждой ревизии - в них указывается, было ли редактирование помечено как незначительное или редактирование бота Например, посмотрите эти ревизии.

Тем не менее, похоже, что изменения в вашем связанном наборе данных были сделаны без пометки их как исправлений ботов, либо потому, что эти боты не являются утвержденными ботами, либо потому, что они забыли установить флаг. В этом случае вам не повезло. Вы все еще можете фильтровать против термина bot в имени пользователя или известном списке ботов в вашей вики.

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