Мракопедия не будет работать 29 июля и/или 5 августа. Читать продолжение в источнике...

Обсуждение участника:I don't need it anymore

Материал из Мракопедии
Перейти к: навигация, поиск

Тык нужно ж тогда еще влепить проверку, выставлена ли плашка автором страницы)

Переделал алгоритм, теперь все немного лучше, быстрее, и правильнее кэшируется:
1. Получаю список неймспейсов, ищу там User и User talk, запоминаю их числовые идентификаторы и локализованные названия. Это кэшируется.
2. Получаю список неанонимных правок в неймспейсе "Участник" с момента последнего визита бота.
3. Фильтрую этот список, оставляя только те правки, где название страницы и имя пользователя совпадают (т.е. пользователь Toriningen и страница Участник:Toriningen/Какая-то страница/Подстраница).
4. Получаю актуальное содержимое для всех уникальных pageid из предыдущего запроса.
5. Разбираю каждую страницу на предмет наличия включения шаблона self-delete (запросом template > name:text("self-delete")). Если шаблона в последней версии нет, исключаю страницу из списка на обработку.
6. Для всех оставшихся страниц, получаю список разобранного содержимого последних изменений.
7. Ищу самое последнее изменение, в котором присутствует включение шаблона self-delete. Если со времени этого изменения прошло больше 24 часов, то страница добавляется в список на удаление.
8. После того, как все страницы обработаны, отправляю запрос на удаление с формулировкой "Пожрано мумью" всех pageids из результирующего списка.
toriningen (осуждение) 23:08, 13 апреля 2016 (MSK)


Слава программистам.

Писателям слава ;) — toriningen (осуждение) 00:03, 14 апреля 2016 (MSK)
Z҉A҉L҉G҉O̚̕̚ придёт, хаос наведёт.