Меню
Главная
Случайная статья
Настройки
|
This page in English
Заявки на флаг бота подаются на этой странице. Флаг «бот» присваивается бюрократами по итогам обсуждения, длящегося не менее трёх суток (за исключением экстренных случаев: в таком случае бюрократ обязан тщательно обосновать как экстренность обстоятельств, так и причину, по которой необходимо присвоение флага, при возможности сослаться на уже прошедшие обсуждения, объявить о присвоении флага бота на форуме администраторов и лично проконтролировать деятельность бота в течение трёх суток; это распространяется и на случай необходимости выполнения административных действий с флагом «бот»). Если у вашего бота имеется флаг глобального бота, то подавать локальную заявку не нужно, если только вы не собираетесь выполнять дополнительные задания, не оговорённые в условиях использования глобального флага. До присвоения флага бюрократ обязан убедиться, что соблюдены все требования этих правил. Если бот требуется для выполнения действий, требующих одобрения сообществом, бюрократы присваивают флаг бота только после достижения сообществом консенсуса по этому вопросу.
Срок рассмотрения заявки зависит от активности голосующих и очевидности консенсуса. Обсуждение с голосованием закрывается любым из бюрократов, и он же либо присваивает соответствующему участнику технический флаг «бот», либо отказывает с чётким разъяснением причин отказа. Если бот собирается совершать действия с помощью AWB, бюрократ также добавляет ник бота на специальную страницу, чтобы тот мог править.
Владельца бота просим повесить шаблон {{Bot}} на страницу бота перед подачей заявки.
Подать заявку на флаг
Подать заявку на снятие флага
Архив заявок | Архив заявок на снятие
Содержание
Well, Well, Bot!
Ответственный ботовод: Участник:Well very well
- Цель
Бот меняет шаблон "нп5" на "не переведено 5" (уже не меняет), а также если ссылка переведена, меняет шаблон на ссылку. Примеры правок: [1], [2], [3], [4]. Правку на странице Дуговая диаграмма почему-то заблокировал фильтр. Почему?
- Технические подробности
Код на Python: https://github.com/LeviPesin/Interbot/blob/master/interbot.py, используется pywikibot.
-- Well very well (обс.) 07:21, 22 ноября 2018 (UTC)[ответить]
Обсуждение (Well, Well, Bot!)- >Бот меняет шаблон "нп5" на "не переведено 5"
Зачем? Вот такие правки точно делать не надо, это бессмысленная накрутка. Отсилы одновременно с более существенными изменениями, но я не вижу пользы от таких правок в принципе. >а также если ссылка переведена, меняет шаблон на ссылку Смотря на наличие русской интервики у иноязычной статьи, а не существование статьи по русскоязычному названию? Это круто, это давно надо было сделать. По опыту могу только сказать, что надо как минимум игнорировать случаи, когда по иноязычной ссылке дизамбиг, потому что иногда наличие статьи означает не «статья переведена», а «статья переименована, а на месте неё оказалось что-то с интервикой». Плюс я давно собирался вычищать «не переведено», которые ссылаются на несуществующие в иноязычном разделе названия — возможно, это будет удобно реализовать в рамках твоего бота. Ну и расшириться на нп1—нп4 было бы круто. А ещё вместо нп5 может быть {{iw}}, если что. ~Facenapalm 09:46, 22 ноября 2018 (UTC)[ответить]
- Вопросы на понимание правил и отношения к ним:
1. Почему такие замены совершать не стоит? 2. Если в голову придёт новая идея для бота, что вы предпримете? 3. Если ваш бот из-за программной ошибки поломает большое количество статей, готовы ли взять ответственность за это и исправить их? ~Facenapalm 11:32, 22 ноября 2018 (UTC)[ответить]
- 1. Потому что это не необходимые действия, и может расцениваться как накрутка.
2. Подам другую заявку на статус бота. 3. Да. Well very well (обс.) 13:32, 22 ноября 2018 (UTC)[ответить]
- 2. Не нужно подавать другую заявку, у нас не англовики. Просто если бот будет выполнять что-то, что хотя бы в теории может вызвать протесты, то по правилу ВП:МНОГОЕ нужно в начале обсудить и достичь консенсуса на эту работу.—Iluvatar обс 13:49, 22 ноября 2018 (UTC)[ответить]
- 1. Не «не необходимое», а просто ничего не меняющее по существу. Правка остаётся в истории изменений, всплывает в списках наблюдения… И при этом не факт, что делает лучше. Вдруг завтра появится ботовод, которому «нп5» нравится больше, чем «не переведено 5»? Не менять же туда-сюда. Иногда такие мелкие замены нужны (например, перенаправление удалено), но это должно быть заранее оговорено.
Обычно такие замены если и делаются, то только фоном — заодно с более существенными правками. 2. На самом деле, такое даже не практикуется. Достаточно оценить консенсусность, и, если консенсус не очевиден, обсудить проход на форуме предложений, или даже на общем форуме. Если речь идёт об исправлении очевидной ошибки или переименовании категории, по которому уже подведён итог, можно даже ничего не обсуждать. См. ВП:МНОГОЕ. ~Facenapalm 13:49, 22 ноября 2018 (UTC)[ответить]
- Вопросы и предложения к реализации:
1. Шаблонов вида «не переведено» пять штук, кроме «нп5» есть с аналогичным синтаксисом {{нп2}}, {{нп3}}, {{нп4}}, {{нп5}} (с {{не переведено}} сложнее, у него может быть другой синтаксис). Кроме того, первая буква нечувствительна к регистру: можно писать {{не переведено 5}}, можно {{Не переведено 5}}, будет работать. Чтобы охватить всё, лучше воспользоваться регулярным выражением (справка для питона). 2. Часть параметров можно опустить. Если отсутствует третий параметр, в него подставляется en , если второй и четвёртый — в них подставляется первый. Синтаксис MediaWiki позволяет писать, например, так: {{нп5|Статья|4=Article}} , что раскрывается в {{нп5|Статья|||Article}} и по смыслу значит {{нп5|Статья|Статья|en|Article}} . Я вижу, в коде это частично учтено, но лишь частично. Есть библиотека mwparserfromhell, которая может помочь с обработкой всех частных случаев. 3. Как я уже говорил, четвёртый параметр может вести на несуществующую статью, вот так[англ.]. Их хорошо бы удалять. Разумеется, это не критика бота, скорее предложение к дальнейшему развитию. ~Facenapalm 11:40, 22 ноября 2018 (UTC)[ответить]
- 2. Да, я знаю это, и учел в своем коде.
3. Сделаю (завтра-послезавтра), спасибо. Well very well (обс.) 13:32, 22 ноября 2018 (UTC)[ответить]
- 1. Да, желательно это сделать, чтобы не получался несправедливый перекос в сторону одного из вариантов. С {{нп2}} ещё нужно быть осторожным в том, что там нужно сохранять и «англ. что-то там», и параметр «текст» после него (см. как работает subst:нп2 в таких случаях). Викизавр (обс.) 16:24, 22 ноября 2018 (UTC)[ответить]
- 1. Добавил нп4 (с его вариациями). Остальные имеют другой синтаксис.
2. Сделал. Код на Гитхабе изменю после всех его правок и теста. Well very well (обс.) 10:51, 29 ноября 2018 (UTC)[ответить]
- >Остальные имеют другой синтаксис
У нп3 точно тот же. ~Facenapalm 11:56, 29 ноября 2018 (UTC)[ответить]
- Там пустые параметры могут быть без |. Well very well (обс.) 12:12, 29 ноября 2018 (UTC)[ответить]
- (ответ на первую версию сообщения) Какие? 4 неименованных параметров и nocat. Остальные в коде шаблона не поддерживаются, так что если ты их уберёшь, ты ничего не сломаешь. Нп5 поддерживет то же и ещё больше.
(ответ на текущую) Пустые параметры могут быть в любых шаблонах. ~Facenapalm 12:16, 29 ноября 2018 (UTC)[ответить]
- Но в обычных шаблонах - abc|def|||. А тут может быть просто abc|def. Well very well (обс.) 12:30, 29 ноября 2018 (UTC)[ответить]
- Во всех шаблонах так. Может быть
{{нп5|Article|Статья||}} , может быть {{нп5|Article|Статья}} . Может быть {{нп5|Статья|||Article}} , может быть {{нп5|Статья|4=Article}} . С точки зрения вики-разметки и механизма шаблонов эти примеры попарно эквивалентны. Ничего того, что умеет нп3 и не умеет нп5 нет, я посмотрел в код шаблона. Пожалуйста, убедитесь, что вы понимаете синтаксис MediaWiki и что ваш бот ничего не сломает до того, как вы его запустите. ~Facenapalm 14:17, 29 ноября 2018 (UTC)[ответить]
- 2. Тут есть одна проблема: mwparserfromhell не поддерживает переделывание шаблона в строку, когда в шаблоне содержатся символы не из ASCII (к примеру, русские буквы). Well very well (обс.) 12:12, 29 ноября 2018 (UTC)[ответить]
- Какой-то у вас страшный метод парсинга страницы, проще сделать чем-то вроде
import re
regex = re.compile(r'(\{\{\s*(?:[Нн]п[2-5]|[Нн]е переведено [2-5]|[Ii]w)\s*\|([^\{\}]*)\}\})') #\}\}
def processIW(match):
fullTemplate = match.group(1)
raw_params = match.group(2).split('|')
params = raw_params # учесть =
if False: # существует страница к params[0]
return # изменённый вариант
else:
return '((' + fullTemplate + '))' # скобки для тестирования
page = 'Нужно {{iw|Smth|Что-то||Чего-то}} и ещё {{нп3|Qch|что-то|fr|}}, а также {{Нп|1=Smth|4=чего-то}}'
result = regex.sub(processIW, page)
print(result)
А идея хорошая! Викизавр (обс.) 12:01, 22 ноября 2018 (UTC)[ответить]
- Давно пора было кому-то этим заняться. Если замен редиректов не будет (нп5 на не переведено 5) и не будет попыток замены одного шаблона другим (на3 на нп5, например), то однозначно флаг нужно выдавать. А ссылки на дизамбиги можно кидать в отчёт и разгребать вручную.—Iluvatar обс 12:15, 22 ноября 2018 (UTC)[ответить]
- За ~Facenapalm 13:49, 22 ноября 2018 (UTC)[ответить]
- Я правильно понимаю, что бот бесконечно высасывает содержимое всех страниц проекта с лайва? Может лучше юзать дамп для этих запросов?—Iluvatar обс 14:06, 22 ноября 2018 (UTC)[ответить]
- Да, правильно понимаете. Дамп - то есть хранить точку остановки? Или что-то другое? Well very well (обс.) 14:35, 22 ноября 2018 (UTC)[ответить]
- Игорь (обс) 14:38, 22 ноября 2018 (UTC)[ответить]
- Ну скорее всего имелась ввиду какая-то ссылка со всеми статьями. Но чем тогда pagegenerators хуже? Well very well (обс.) 14:52, 22 ноября 2018 (UTC)[ответить]
- Игорь (обс) 14:55, 22 ноября 2018 (UTC)[ответить]
- На всякий случай: посмотрите последний абзац ВП:ППБ#Требования к ботам. Дамп — это копия всех страниц рувики, заранее скачанная на ваш компьютер, чтобы не грузить их по отдельности. Викизавр (обс.) 14:56, 22 ноября 2018 (UTC)[ответить]
- Это архивная копия всех статей проекта. Юзать запросы к АПИ для бесконечного чтения 1,5 млн статей крайне не рекомендуется, о чём сказано во всевозможных правилах использования ботов. Хуже подобный подход тем, что вы создаёте перманентную нагрузку на лайв-сервера, тогда как её вполне можно избежать. См сначала это, потом это. Локально работать с дампом очень приятно, 4 строчки кода. На Лабсе не юзал, но наверняка нет сложностей и там.—Iluvatar обс 14:59, 22 ноября 2018 (UTC)[ответить]
- Угу, то есть в дампе куча файлов xml. И как их привести к тому виду, который посылается на вход моей функции? Well very well (обс.) 15:07, 22 ноября 2018 (UTC)[ответить]
- XML-файл с последними версиями текста всех страниц рувики один - вот https://dumps.wikimedia.org/ruwiki/20181101 /ruwiki-20181101-pages-meta-current.xml.bz2 например последний, новые выходят примерно третьего и двадцать третьего числа каждого месяца. Там архив 4 ГБ, распаковывается в хмл 25 ГБ, полученный хмл можно парсить любым способом, он содержит исходный текст каждой страницы. Кроме того, для подготовки списка страниц для работы можно использовать служебные страницы типа "список страниц, включающих этот шаблон", собирать машиночитаемые списки с таких страниц помогают инструменты ВП:АВБ и ВП:PetScan. MBH 15:23, 22 ноября 2018 (UTC)[ответить]
- Распаковывать ничего не нужно для простого перебора статей. Локально вот так работать. Быстро и просто. На Лабсе сказать не могу. В крайнем случае прогуляйтесь по чужим каталогам или спросите в чате/форуме/юзеров.—Iluvatar обс 15:30, 22 ноября 2018 (UTC)[ответить]
- За —Джек (обс.) 15:28, 22 ноября 2018 (UTC)[ответить]
- Вот еще какая идея появилась. Если есть красная ссылка, то пытаться перевести с помощью какого-нибудь переводчика, и искать такое название в другой Википедии, и если нашлось, то писать в отчет с предложением поставить шаблон. Well very well (обс.) 04:17, 23 ноября 2018 (UTC)[ответить]
- Может для начала просто искать если в квадратных скобках — что-то написанное латиницей. be-nt-all (обс.) 05:11, 23 ноября 2018 (UTC)[ответить]
- Если вы готовы сами разгребать эти отчёты — флаг в руки. Если вы уверены, что в каких-то случаях шаблоны может проставить бот — обсудите это на форуме и дерзайте. В противном случае не вижу смысла. У нас 69 тысяч статей имеют прямые ссылки на другие разделы (
[[:en:Article|такие]] ), которые надо заменить на внутренние и шаблоны «не переведено», потому что мешают, а рук нет (ботом это делать нельзя, если вдруг что). Боюсь, за ваши отчёты тем более никто браться не будет. ~Facenapalm 11:35, 23 ноября 2018 (UTC)[ответить]
- Генератор можно (нужно) заменить с рекурсивного поиска по категории на включения шаблона нп5 в ОП. Документация — [5]. Либо использовать дамп.Ошибка: некорректно задана дата установки (исправьте через подстановку шаблона)И реализовать поиск интервик можно стандартными средствами, хотя не факт оно будет лучше/быстрее и т.д. — d:Wikidata:Creating_a_bot/ru#Пример_№_2:_получение_интервики-ссылок. -- dima_st_bk 05:06, 24 ноября 2018 (UTC)[ответить]
- Был очень занят вчера и сегодня, поэтому мало сделал. Завтра постараюсь сделать много. Well very well (обс.) 14:30, 24 ноября 2018 (UTC)[ответить]
- За — Алексей Копылов 01:26, 1 декабря 2018 (UTC)[ответить]
Итог (Well, Well, Bot!)
TBTBot
Ответственный ботовод: TenBaseT
- Цель
По пожеланиям коллег нужна запись бота, чтобы не засорять страницу свежих правок и не вызывать ложных срабатываний антивандальных ботов при исправлении ошибок статического анализатора. Работа планируется в ручном и в полуавтоматическом режиме.
- Технические подробности
автоматического режима не планируется
-- TenBaseT (обс.) 09:20, 3 декабря 2018 (UTC)[ответить]
Обсуждение (TBTBot)Какими инструментами будут совершаться правки (AWB? свои скрипты?) (увидел) и какие именно ошибки планируется исправлять? Про исправление тега <i> : его бы сразу на '' менять. На страницах обсуждения пофиг, но если в статьях будет — то лучше так. ~Facenapalm 11:20, 3 декабря 2018 (UTC)[ответить]
- Примеры исправления ошибок можно посмотреть у меня во вкладе за последние несколько дней или во вкладе бота. Про тег «i» - согласен. TenBaseT (обс.) 11:25, 3 декабря 2018 (UTC)[ответить]
- Я больше не о примерах спрашиваю, а о намерениях. Пока ты исправлял только отсутствующие закрывающие теги, как я понимаю. Какие-нибудь конкретные планы на остальное есть? ~Facenapalm 12:42, 3 декабря 2018 (UTC)[ответить]
- Ну работы там ... отсюда и до пенсии :) Я пока точных планов не составлял, но пока в общих планах 240 страниц с несколькими незакрытыми тагами, 436 872 страниц с одним незакрытым тагом, 3230 страниц с фиктивными параметрами файлов ... ну и куча остальных проблем, которые я пока еще даже не смотрел. TenBaseT (обс.) 13:26, 3 декабря 2018 (UTC)[ответить]
- Можно спросить, как AWB поможет в первых двух категориях? Там есть функция lintid, о которой я не знаю? Игорь (обс) 13:38, 3 декабря 2018 (UTC)[ответить]
- Фиктивные параметры файлов уже исправлялись (и до сих пор исправляются, я смотрю) ботом участника Vort. По-моему (я подробности уже призабыл), он не хотел пускаться на неэнциклопедические пространства имён, но у него есть готовый для этого код. Дабы не изобретать велосипед, лучше с ним обсудить фронт работ. ~Facenapalm 14:02, 3 декабря 2018 (UTC)[ответить]
- Да, некоторые разновидности этих ошибок мой бот исправляет в автоматическом режиме (раз в сутки). Код находится вот тут. Модифицировать его для единоразовой зачистки других пространств имён должно быть несложно. Если надо будет, я расскажу как получить ключи доступа в нужном для бота формате. — Vort (обс.) 14:14, 3 декабря 2018 (UTC)[ответить]
- Дело полезное, выделить такие вещи на ботоучетку в целом правильно. Еще можно попробовать en:WP:CLEANER, я, правда, сам не запускал, но, говорят, для такого рода задач удобен. Abiyoyo (обс.) 13:58, 3 декабря 2018 (UTC)[ответить]
- Инициатива похвальная, проблем не вижу, За. Заглядывай ещё в Check Wikipedia. ~Facenapalm 14:03, 3 декабря 2018 (UTC)[ответить]
- За, хотя я не вижу причин разделять вклад, если правки делаются вручную. — Алексей Копылов 07:27, 4 декабря 2018 (UTC)[ответить]
Итог (TBTBot)
|
|