Википедия:Форум ботоводов/Архив/2010

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску


Простановка шаблонов «Нет категорий» и подобных[править код]

Сейчас расстановкой шаблонов {{Нет категорий}}, {{Изолированная статья}}, {{Тупиковая статья}} занимается U-bot, у него есть след. недостатки:

  1. работает редко, с периодом 1-5 суток (что, например, не позволяет отправлять копиво из Категория:Википедия:Статьи без категорий на быстрое удаление);
  2. оставляет по одной правке на шаблон, в результате замусоривает историю обычно двумя последовательными правками;
  3. работает с копией рувики, а не с самим сайтом, в результате иногда выставляет шаблон «Нет категорий» в уже категоризированную статью и т. п.;

Эти недостатки понятны и объясняются огромным объёмом работы, которую проделывает U-Bot. Однако в реальности большая часть его правок относится к новым статьям. В связи с этим предлагается в дополнение к U-Bot-у запустить еще одного бота, который бы просматривал исключительно новые статьи и делал бы это куда оперативнее. Собственно бот создан и готов к работе, однако, излишняя оперативность бота может иметь нежелательные последствия, например, увеличивается вероятность конфликта правок. Потому в боте предусмотрен временной лаг между созданием статьи и её обработкой ботом. Основной вопрос, который хотелось бы обсудить — это чему должен быть равен этот лаг, в качестве отправной точки предлагаю 3 часа. Начало обсуждения можно найти на: Википедия:Заявки на статус бота/KrBot. Ivan A. Krestinin 19:39, 29 декабря 2010 (UTC)

Думаю, можно будет сделать несколько тестовых запусков — если появятся недовольные пользователи, то интервал увеличивать. На этом форуме, по крайней мере, возражений нет. --Emaus 01:07, 5 января 2011 (UTC)
Я думаю, первый шаблон вообще имеет смысл потихоньку изживать, равно как и {{нет интервик}}, поскольку актуальный и более точный список всегда можно получить с помощью инструментов Тулсервера. — Claymore 09:57, 5 января 2011 (UTC)
Не подскажете каким инструментом получить список статей аналогичный Категория:Википедия:Статьи без категорий? Ivan A. Krestinin 19:00, 5 января 2011 (UTC)
Хм, вроде где-то видел, но сходу сейчас не находится. Вот для поиска статей без интервик: [1]. — Claymore 12:16, 6 января 2011 (UTC)

Надо бы улучшить ещё содержательную часть шаблона "нет категорий". Существуют ещё ненастоящие категории - типа "нет интервик", "стаб" или слишком общие типа "Персоналии". Их надо также не считать категориями. неон 10:49, 5 января 2011 (UTC)

Сейчас {{Нет категорий}} ставится на статьи у которых нет ни одной не скрытой категории. Категории вроде «Нет интервик», «стаб» скрытые, потому с ними проблем нет. Некоторую проблему составляют категории вроде Категория:Персоналии по алфавиту, Категория:Населённые пункты по алфавиту, я могу ставить {{Нет категорий}} на статьи, которые попадают только в эти категории, но следующий же проход U-Bot-а снимет эти шаблоны, нужно договариваться и с его автором, а также обсуждать это на форумах, думаю не все будут согласны. Ivan A. Krestinin 19:00, 5 января 2011 (UTC)

Вопрос[править код]

В связи с техническими неполадками компьютера, я давно не запускал бота. Сейчас же при запуске скриптов команда выдает результат не в командной строке, а просто открывает файл в блокноте (бот построен на pywikipedia, т.е. скрипты - login.py, replace.py и т.д.). С чем это может быть связано, и как исправить? Bogdanpax 11:50, 29 декабря 2010 (UTC)

Открой командную строку (в виндозе это по-моему cmd.exe). Там напиши login.py. <ENTER> Должно работать. --Obersachse 16:35, 29 декабря 2010 (UTC)
PS. Посмотри ещё meta:Использование pywikipedia.
Если правильно понял проблему, разрешения скриптов просто перестали ассоциироваться с питоном. Исправляется через контекстное меню (клик правой кнопкой мыши на файле скрипта) → «открыть с помощью» → выбрать программу, отвечающую за питон (в моём случае это файл C:\Python27\python.exe) и поставить галочку «использовать для всех файлов такого типа». Инструкция для Windows XP, в разных ОС может быть иначе. — GreenStork. 17:20, 29 декабря 2010 (UTC)

Можно ли следить за вновь создаваемыми статьями?[править код]

Господа ботоводы, прошу подумать над такой технической проблемой. Просматривая архивы страниц "к удалению", я наткнулся на ситуацию, когда по статье был подведен итог "удалить", но ссылка на статью при этом была синяя. Т.е. кто-то создал эту статью заново. Если я правильно понимаю соответствующие разделы правил, то эта ситуация является нарушением. Удаленные статьи могут быть восстановлены через соответствующее обсуждение, а создание их заново без обсуждения - это обход правил. В принципе, такую ситуацию можно было бы перетерпеть, если бы новая статья была существенно лучше старой и исправляла те причины, по которым была удалена старая. Но то, что я увидел, к таковому не относилось - статья была с теми же недостатками. И возник у меня вопрос: а можно ли следить за вновь создаваемыми статьями на предмет того, что статья с таким названием уже существовала и была удалена? И при обнаружении этого факта пометить статью каким-нибудь способом (например, скрытая категория), чтобы админы обратили на нее особое внимание: если недостатки исправлены - пусть живет, если не исправлены - "фтопку". Grig_siren 19:50, 21 декабря 2010 (UTC)

Если я правильно понимаю соответствующие разделы правил, то эта ситуация является нарушением. — Не всегда. Если статья была удалена как непереработанное копивио или орисс — нет никаких препятствий к её воссозданию своими словами или на основе источников. Другой вопрос со значимостью или словарностью — тут да, скорее всего восстанавливать стоит всё же только через ВУС (хотя возможны и тут исключения). Но в одном Вы правы — возможность иметь пополняемую ботом скрытую категорию Воссозданные статьи (возможно, с неудаляемым неадминистраторами шаблоном со ссылкой на последнее обсуждение удаления) совсем не помешала бы... Дядя Фред 20:37, 21 декабря 2010 (UTC)
Конкретно тот случай, который я имею в виду, касался вопросов значимости и выполнения правила ВП:ЧНЯВ в части "не справочник". И к вновь созданной статье претензии те же самые. По-моему, это все-таки нарушение правил. А что касается удаленного и переписанного копивио - так потому и предлагаю, чтобы бот только помечал такие статьи, а не удалял их нафиг. Решение пусть принимает человек - бот анализ такой ситуации не способен. Grig_siren 20:55, 21 декабря 2010 (UTC)
  • Я так интуитивно догадываюсь, что можно бота запрограммировать записывать названия удалённых страниц на отдельную страницу в формате * {{#ifexist:{{{название_удалённой_страницы}}}|<span style="background:#ff0;">[[название_удалённой_страницы]]<span>}}, что даст список красных ссылок с выделенными жёлтым цветом (а-ля неактуальный {{Не переведено}}) воссозданными страницами; нужно будет только пролистывать периодически. Первое, что в голову пришло, более опытные участники, уверен, могут и нечто поинтересней придумать. — GreenStork. 22:36, 21 декабря 2010 (UTC)
    Можно, наверно, проще — бот мониторит новые странцы и проверяет наличие записей в журнале удалений. Если находит соответствие — подставляет скрытую категорию Статьи, воссозданные после удаления. Потом в категорию приходит живой человек и решает, что делать — то ли КБУ её, то ли категорию убрать. Как-то так. Дядя Фред 08:36, 22 декабря 2010 (UTC)
    Можно, конечно. Только так минимум по две лишних правки на страницу будет (добавление категории, удаление категории; что, в принципе, не особо страшно), если не принимать ко вниманию тот факт, что автор статьи может эту категорию убрать до того, как её проверят. А список можно сделать доступным для редактирования только администраторам. — GreenStork. 08:50, 22 декабря 2010 (UTC)

Почему бот постоянно добавляет в статью о пятом фильме интервики на статьи о франчайзе — [2]? Можно это как-то прекратить? AntiKrisT 13:56, 13 декабря 2010 (UTC)

Эта категория содержит ряд подкатегорий, название которых приведено с ошибкой. Великий князь московский и подобные титулы пишутся на русском языке со строчных букв. Обсуждение уже велось по поводу Категория:Великие князья литовские - возражений не последовало. Считаю, что остальные категории также должны быть переименованы, но уже без обсуждения (случай очевидный). При желании можно поискать соответствующие ответы gramota.ru. Если кто-нибудь возмётся, можно будет исправить эту типичную ошибку во всём разделе. --Azgar 21:00, 12 декабря 2010 (UTC)

✔ Сделано. — GreenStork. 23:21, 12 декабря 2010 (UTC)

Нарисованные интервики[править код]

Пытаюсь использовать http://meta.wikimedia.org/wiki/Interwiki_graphs и нифига не получается.

  1. Поставил python-2.7.1, скачал и распаковал pywikipedia 8647 (2010-10-13), инсталлировал Graphviz2.26.3, скачал pyparsing-1.5.5, распаковал и инсталлировал через "setup.py install", скачал pydot-1.0.3, распаковал и инсталлировал через "setup.py install".
  2. Прописал "interwiki_graph = True" в user-config.py
  3. При запуске интервики-бота получаю такой стектрейс:
D:\Wikipedia\pywikipedia\pywikipedia>interwiki.py JPEG XR
(тут пропускаю кучу строчек о текущем положении интервик)
Preparing graph for JPEG XR
Dump ru (wikipedia) appended.
Traceback (most recent call last):
 File "D:\Wikipedia\pywikipedia\pywikipedia\interwiki.py", line 2567, in <module>
   main()
 File "D:\Wikipedia\pywikipedia\pywikipedia\interwiki.py", line 2541, in main
   bot.run()
 File "D:\Wikipedia\pywikipedia\pywikipedia\interwiki.py", line 2292, in run
   self.queryStep()
 File "D:\Wikipedia\pywikipedia\pywikipedia\interwiki.py", line 2270, in queryStep
   subj.finish(self)
 File "D:\Wikipedia\pywikipedia\pywikipedia\interwiki.py", line 1633, in finish
   new = self.assemble()
 File "D:\Wikipedia\pywikipedia\pywikipedia\interwiki.py", line 1527, in assemble
   graphDrawer.createGraph()
 File "D:\Wikipedia\pywikipedia\pywikipedia\interwiki_graph.py", line 140, in createGraph
   self.addDirectedEdge(page, refPage)
 File "D:\Wikipedia\pywikipedia\pywikipedia\interwiki_graph.py", line 93, in addDirectedEdge
   oppositeEdge.set_dir('both')
AttributeError: 'list' object has no attribute 'set_dir'

  • Проблема не исчезает, если закомментировать строчку 93 interwiki_graph.py в файле (или раскомментировать 92)--Movses 15:42, 11 декабря 2010 (UTC)

Большая просьба[править код]

Перенесено на страницу Википедия:Запросы к ботоводам.

ClaymoreBot 05:48, 7 декабря 2010 (UTC)

Просьба[править код]

Может кто-нибудь помочь в этом вопросе?--АААЙошкар-Ола 16:31, 5 декабря 2010 (UTC)

Так Obersachse же ответил, что сделает. --Michgrig (talk to me) 18:37, 5 декабря 2010 (UTC) Upd. Не увидел, что он написал уже после того, как была открыта данная тема. --Michgrig (talk to me) 18:38, 5 декабря 2010 (UTC)
Спасибо. Понял.--АААЙошкар-Ола 19:23, 5 декабря 2010 (UTC)

pywikipedia, вопрос по возможностям[править код]

Подскажите пожалуйста, можно ли стандартными средствами/скриптами данного бота выполнить следующие задачи:

  1. Удалить из списка страниц ссылки на внешний сайт (синтаксис убираемой строки, конечно, разнообразный)?
  2. Добавить свой текст (или заменить существующий) вокруг текста, если есть только его окружение? К примеру, есть текст
        <noinclude>[[Категория:Большая]]</noinclude>
        нужно сделать
        <noinclude>{{#if:{{NAMESPACE}}||[[Категория:Большая]]}}</noinclude>
        или
        {{#if:{{NAMESPACE}}||[[Категория:Большая]]}}
        с учётом того, что текст внутри тегов «noinclude» на разных страницах разный, а между тегами и текстом могут быть переносы строки. — GreenStork. 20:22, 4 декабря 2010 (UTC)
По-моему, для этого хватит и ВП:АВБ и немного регулярных выражений, с флагом бота он не будет запрашивать подтверждения на каждую правку. --Drakosh 20:36, 4 декабря 2010 (UTC)
Значит, будем знакомиться с awb. Спасибо. — GreenStork. 22:13, 4 декабря 2010 (UTC)
Первое можно через spamremove.py делать rubin16 20:38, 4 декабря 2010 (UTC)
Спасибо, попробовал, понравилось. :) — GreenStork. 22:13, 4 декабря 2010 (UTC)
(2) С использованием регулярки в replace.py: replace.py -regex "(?s)<noinclude>(.+?)</noinclude>" "<noinclude>{{#if:{{NAMESPACE}}||\\1}}</noinclude>" --Lankier 12:26, 5 декабря 2010 (UTC)
Вроде оно, спасибо. :) Но надобно маны курить, ибо уже с переносом строки прекращает функционировать как надо. — GreenStork. 19:58, 6 декабря 2010 (UTC)
(?s) в начале как раз и надо, чтобы точка захватывала перевод строки (по умолчанию этого не происходит). Ключевые слова в документации: iLmsux и re.S. --Lankier 12:46, 7 декабря 2010 (UTC)
В общем, не знаю, в чём там была проблема, но AWB Regex Texter (специально установил для данного случая, после совета by Drakosh) у меня не хочет заменять текст, если после тега noinclude идёт обрыв строки. Бот же сработал прекрасно, хотя код идентичен. Ещё раз благодарю за помощь. :) — GreenStork. 18:51, 7 декабря 2010 (UTC)

Pywikipediabot/interwiki.py[править код]

Существует ли возможность автоматически создать для user-config.py список вида

usernames['wikipedia']['ru'] = u'Dinamik-bot'
usernames['wikipedia']['de'] = u'Dinamik-bot'
usernames['wikipedia']['en'] = u'Dinamik-bot'
...

где перечислены все языковые разделы, поддерживающие статус global bot (для работы interwiki.py) или нужно набирать все строки вручную? Если можно было бы при генерации включить ещё и разделы, где global bot не поддерживается, но имеется локальный статус bot, было бы совсем хорошо. Dinamik 10:58, 4 ноября 2010 (UTC)

Я парсил табличкуDnikitin 13:35, 4 ноября 2010 (UTC)
Спасибо! Вбил:
usernames['wikipedia']['ab'] = u'Dinamik-bot'
usernames['wikipedia']['ace'] = u'Dinamik-bot'
usernames['wikipedia']['af'] = u'Dinamik-bot'
usernames['wikipedia']['ak'] = u'Dinamik-bot'
usernames['wikipedia']['als'] = u'Dinamik-bot'
usernames['wikipedia']['am'] = u'Dinamik-bot'
usernames['wikipedia']['an'] = u'Dinamik-bot'
usernames['wikipedia']['ang'] = u'Dinamik-bot'
usernames['wikipedia']['arc'] = u'Dinamik-bot'
usernames['wikipedia']['arz'] = u'Dinamik-bot'
usernames['wikipedia']['ast'] = u'Dinamik-bot'
usernames['wikipedia']['as'] = u'Dinamik-bot'
usernames['wikipedia']['av'] = u'Dinamik-bot'
usernames['wikipedia']['ay'] = u'Dinamik-bot'
usernames['wikipedia']['az'] = u'Dinamik-bot'
usernames['wikipedia']['ba'] = u'Dinamik-bot'
usernames['wikipedia']['bar'] = u'Dinamik-bot'
usernames['wikipedia']['bat-smg'] = u'Dinamik-bot'
usernames['wikipedia']['bcl'] = u'Dinamik-bot'
usernames['wikipedia']['be-x-old'] = u'Dinamik-bot'
usernames['wikipedia']['be'] = u'Dinamik-bot'
usernames['wikipedia']['bg'] = u'Dinamik-bot'
usernames['wikipedia']['bh'] = u'Dinamik-bot'
usernames['wikipedia']['bi'] = u'Dinamik-bot'
usernames['wikipedia']['bm'] = u'Dinamik-bot'
usernames['wikipedia']['bo'] = u'Dinamik-bot'
usernames['wikipedia']['bpy'] = u'Dinamik-bot'
usernames['wikipedia']['bug'] = u'Dinamik-bot'
usernames['wikipedia']['bxr'] = u'Dinamik-bot'
usernames['wikipedia']['ca'] = u'Dinamik-bot'
usernames['wikipedia']['cbk-zam'] = u'Dinamik-bot'
usernames['wikipedia']['cdo'] = u'Dinamik-bot'
usernames['wikipedia']['ceb'] = u'Dinamik-bot'
usernames['wikipedia']['ce'] = u'Dinamik-bot'
usernames['wikipedia']['chr'] = u'Dinamik-bot'
usernames['wikipedia']['chy'] = u'Dinamik-bot'
usernames['wikipedia']['ch'] = u'Dinamik-bot'
usernames['wikipedia']['ckb'] = u'Dinamik-bot'
usernames['wikipedia']['co'] = u'Dinamik-bot'
usernames['wikipedia']['crh'] = u'Dinamik-bot'
usernames['wikipedia']['cr'] = u'Dinamik-bot'
usernames['wikipedia']['csb'] = u'Dinamik-bot'
usernames['wikipedia']['cu'] = u'Dinamik-bot'
usernames['wikipedia']['cv'] = u'Dinamik-bot'
usernames['wikipedia']['cy'] = u'Dinamik-bot'
usernames['wikipedia']['da'] = u'Dinamik-bot'
usernames['wikipedia']['diq'] = u'Dinamik-bot'
usernames['wikipedia']['dsb'] = u'Dinamik-bot'
usernames['wikipedia']['dz'] = u'Dinamik-bot'
usernames['wikipedia']['ee'] = u'Dinamik-bot'
usernames['wikipedia']['el'] = u'Dinamik-bot'
usernames['wikipedia']['eml'] = u'Dinamik-bot'
usernames['wikipedia']['en'] = u'Dinamik-bot'
usernames['wikipedia']['eo'] = u'Dinamik-bot'
usernames['wikipedia']['et'] = u'Dinamik-bot'
usernames['wikipedia']['eu'] = u'Dinamik-bot'
usernames['wikipedia']['ext'] = u'Dinamik-bot'
usernames['wikipedia']['fa'] = u'Dinamik-bot'
usernames['wikipedia']['ff'] = u'Dinamik-bot'
usernames['wikipedia']['fj'] = u'Dinamik-bot'
usernames['wikipedia']['fi'] = u'Dinamik-bot'
usernames['wikipedia']['fo'] = u'Dinamik-bot'
usernames['wikipedia']['frp'] = u'Dinamik-bot'
usernames['wikipedia']['frr'] = u'Dinamik-bot'
usernames['wikipedia']['fur'] = u'Dinamik-bot'
usernames['wikipedia']['gan'] = u'Dinamik-bot'
usernames['wikipedia']['ga'] = u'Dinamik-bot'
usernames['wikipedia']['gd'] = u'Dinamik-bot'
usernames['wikipedia']['glk'] = u'Dinamik-bot'
usernames['wikipedia']['gn'] = u'Dinamik-bot'
usernames['wikipedia']['got'] = u'Dinamik-bot'
usernames['wikipedia']['gu'] = u'Dinamik-bot'
usernames['wikipedia']['gv'] = u'Dinamik-bot'
usernames['wikipedia']['hak'] = u'Dinamik-bot'
usernames['wikipedia']['haw'] = u'Dinamik-bot'
usernames['wikipedia']['ha'] = u'Dinamik-bot'
usernames['wikipedia']['he'] = u'Dinamik-bot'
usernames['wikipedia']['hif'] = u'Dinamik-bot'
usernames['wikipedia']['hi'] = u'Dinamik-bot'
usernames['wikipedia']['hr'] = u'Dinamik-bot'
usernames['wikipedia']['hsb'] = u'Dinamik-bot'
usernames['wikipedia']['ht'] = u'Dinamik-bot'
usernames['wikipedia']['hu'] = u'Dinamik-bot'
usernames['wikipedia']['hy'] = u'Dinamik-bot'
usernames['wikipedia']['ia'] = u'Dinamik-bot'
usernames['wikipedia']['ie'] = u'Dinamik-bot'
usernames['wikipedia']['ig'] = u'Dinamik-bot'
usernames['wikipedia']['ik'] = u'Dinamik-bot'
usernames['wikipedia']['ilo'] = u'Dinamik-bot'
usernames['wikipedia']['io'] = u'Dinamik-bot'
usernames['wikipedia']['iu'] = u'Dinamik-bot'
usernames['wikipedia']['ja'] = u'Dinamik-bot'
usernames['wikipedia']['jbo'] = u'Dinamik-bot'
usernames['wikipedia']['jv'] = u'Dinamik-bot'
usernames['wikipedia']['kaa'] = u'Dinamik-bot'
usernames['wikipedia']['kab'] = u'Dinamik-bot'
usernames['wikipedia']['ka'] = u'Dinamik-bot'
usernames['wikipedia']['kg'] = u'Dinamik-bot'
usernames['wikipedia']['ki'] = u'Dinamik-bot'
usernames['wikipedia']['kk'] = u'Dinamik-bot'
usernames['wikipedia']['kl'] = u'Dinamik-bot'
usernames['wikipedia']['km'] = u'Dinamik-bot'
usernames['wikipedia']['kn'] = u'Dinamik-bot'
usernames['wikipedia']['ko'] = u'Dinamik-bot'
usernames['wikipedia']['krc'] = u'Dinamik-bot'
usernames['wikipedia']['ks'] = u'Dinamik-bot'
usernames['wikipedia']['ku'] = u'Dinamik-bot'
usernames['wikipedia']['kv'] = u'Dinamik-bot'
usernames['wikipedia']['kw'] = u'Dinamik-bot'
usernames['wikipedia']['ky'] = u'Dinamik-bot'
usernames['wikipedia']['lad'] = u'Dinamik-bot'
usernames['wikipedia']['la'] = u'Dinamik-bot'
usernames['wikipedia']['lbe'] = u'Dinamik-bot'
usernames['wikipedia']['lb'] = u'Dinamik-bot'
usernames['wikipedia']['lg'] = u'Dinamik-bot'
usernames['wikipedia']['lij'] = u'Dinamik-bot'
usernames['wikipedia']['li'] = u'Dinamik-bot'
usernames['wikipedia']['lmo'] = u'Dinamik-bot'
usernames['wikipedia']['ln'] = u'Dinamik-bot'
usernames['wikipedia']['lo'] = u'Dinamik-bot'
usernames['wikipedia']['lv'] = u'Dinamik-bot'
usernames['wikipedia']['map-bms'] = u'Dinamik-bot'
usernames['wikipedia']['mdf'] = u'Dinamik-bot'
usernames['wikipedia']['mg'] = u'Dinamik-bot'
usernames['wikipedia']['mhr'] = u'Dinamik-bot'
usernames['wikipedia']['mi'] = u'Dinamik-bot'
usernames['wikipedia']['mk'] = u'Dinamik-bot'
usernames['wikipedia']['ml'] = u'Dinamik-bot'
usernames['wikipedia']['mn'] = u'Dinamik-bot'
usernames['wikipedia']['ms'] = u'Dinamik-bot'
usernames['wikipedia']['mwl'] = u'Dinamik-bot'
usernames['wikipedia']['myv'] = u'Dinamik-bot'
usernames['wikipedia']['my'] = u'Dinamik-bot'
usernames['wikipedia']['mzn'] = u'Dinamik-bot'
usernames['wikipedia']['nah'] = u'Dinamik-bot'
usernames['wikipedia']['nap'] = u'Dinamik-bot'
usernames['wikipedia']['na'] = u'Dinamik-bot'
usernames['wikipedia']['nds-nl'] = u'Dinamik-bot'
usernames['wikipedia']['new'] = u'Dinamik-bot'
usernames['wikipedia']['ne'] = u'Dinamik-bot'
usernames['wikipedia']['nl'] = u'Dinamik-bot'
usernames['wikipedia']['nov'] = u'Dinamik-bot'
usernames['wikipedia']['no'] = u'Dinamik-bot'
usernames['wikipedia']['nrm'] = u'Dinamik-bot'
usernames['wikipedia']['nv'] = u'Dinamik-bot'
usernames['wikipedia']['ny'] = u'Dinamik-bot'
usernames['wikipedia']['oc'] = u'Dinamik-bot'
usernames['wikipedia']['om'] = u'Dinamik-bot'
usernames['wikipedia']['or'] = u'Dinamik-bot'
usernames['wikipedia']['os'] = u'Dinamik-bot'
usernames['wikipedia']['pag'] = u'Dinamik-bot'
usernames['wikipedia']['pam'] = u'Dinamik-bot'
usernames['wikipedia']['pap'] = u'Dinamik-bot'
usernames['wikipedia']['pa'] = u'Dinamik-bot'
usernames['wikipedia']['pdc'] = u'Dinamik-bot'
usernames['wikipedia']['pih'] = u'Dinamik-bot'
usernames['wikipedia']['pi'] = u'Dinamik-bot'
usernames['wikipedia']['pms'] = u'Dinamik-bot'
usernames['wikipedia']['pnb'] = u'Dinamik-bot'
usernames['wikipedia']['pnt'] = u'Dinamik-bot'
usernames['wikipedia']['ps'] = u'Dinamik-bot'
usernames['wikipedia']['qu'] = u'Dinamik-bot'
usernames['wikipedia']['rmy'] = u'Dinamik-bot'
usernames['wikipedia']['rm'] = u'Dinamik-bot'
usernames['wikipedia']['rn'] = u'Dinamik-bot'
usernames['wikipedia']['roa-rup'] = u'Dinamik-bot'
usernames['wikipedia']['roa-tara'] = u'Dinamik-bot'
usernames['wikipedia']['ru'] = u'Dinamik-bot'
usernames['wikipedia']['rw'] = u'Dinamik-bot'
usernames['wikipedia']['sah'] = u'Dinamik-bot'
usernames['wikipedia']['sa'] = u'Dinamik-bot'
usernames['wikipedia']['scn'] = u'Dinamik-bot'
usernames['wikipedia']['sco'] = u'Dinamik-bot'
usernames['wikipedia']['sc'] = u'Dinamik-bot'
usernames['wikipedia']['sd'] = u'Dinamik-bot'
usernames['wikipedia']['se'] = u'Dinamik-bot'
usernames['wikipedia']['sg'] = u'Dinamik-bot'
usernames['wikipedia']['sh'] = u'Dinamik-bot'
usernames['wikipedia']['simple'] = u'Dinamik-bot'
usernames['wikipedia']['si'] = u'Dinamik-bot'
usernames['wikipedia']['sk'] = u'Dinamik-bot'
usernames['wikipedia']['sm'] = u'Dinamik-bot'
usernames['wikipedia']['sn'] = u'Dinamik-bot'
usernames['wikipedia']['so'] = u'Dinamik-bot'
usernames['wikipedia']['srn'] = u'Dinamik-bot'
usernames['wikipedia']['ss'] = u'Dinamik-bot'
usernames['wikipedia']['stq'] = u'Dinamik-bot'
usernames['wikipedia']['st'] = u'Dinamik-bot'
usernames['wikipedia']['su'] = u'Dinamik-bot'
usernames['wikipedia']['sv'] = u'Dinamik-bot'
usernames['wikipedia']['sw'] = u'Dinamik-bot'
usernames['wikipedia']['szl'] = u'Dinamik-bot'
usernames['wikipedia']['ta'] = u'Dinamik-bot'
usernames['wikipedia']['tet'] = u'Dinamik-bot'
usernames['wikipedia']['te'] = u'Dinamik-bot'
usernames['wikipedia']['tg'] = u'Dinamik-bot'
usernames['wikipedia']['th'] = u'Dinamik-bot'
usernames['wikipedia']['ti'] = u'Dinamik-bot'
usernames['wikipedia']['tk'] = u'Dinamik-bot'
usernames['wikipedia']['tl'] = u'Dinamik-bot'
usernames['wikipedia']['tn'] = u'Dinamik-bot'
usernames['wikipedia']['to'] = u'Dinamik-bot'
usernames['wikipedia']['tpi'] = u'Dinamik-bot'
usernames['wikipedia']['ts'] = u'Dinamik-bot'
usernames['wikipedia']['tt'] = u'Dinamik-bot'
usernames['wikipedia']['tum'] = u'Dinamik-bot'
usernames['wikipedia']['tw'] = u'Dinamik-bot'
usernames['wikipedia']['ty'] = u'Dinamik-bot'
usernames['wikipedia']['udm'] = u'Dinamik-bot'
usernames['wikipedia']['ug'] = u'Dinamik-bot'
usernames['wikipedia']['uz'] = u'Dinamik-bot'
usernames['wikipedia']['ve'] = u'Dinamik-bot'
usernames['wikipedia']['vec'] = u'Dinamik-bot'
usernames['wikipedia']['vls'] = u'Dinamik-bot'
usernames['wikipedia']['war'] = u'Dinamik-bot'
usernames['wikipedia']['wa'] = u'Dinamik-bot'
usernames['wikipedia']['wo'] = u'Dinamik-bot'
usernames['wikipedia']['xal'] = u'Dinamik-bot'
usernames['wikipedia']['xh'] = u'Dinamik-bot'
usernames['wikipedia']['yi'] = u'Dinamik-bot'
usernames['wikipedia']['yo'] = u'Dinamik-bot'
usernames['wikipedia']['za'] = u'Dinamik-bot'
usernames['wikipedia']['zea'] = u'Dinamik-bot'
usernames['wikipedia']['zh-classical'] = u'Dinamik-bot'
usernames['wikipedia']['zh-min-nan'] = u'Dinamik-bot'
usernames['wikipedia']['zh'] = u'Dinamik-bot'
usernames['wikipedia']['zu'] = u'Dinamik-bot'
вдруг кому-нибудь пригодится... Dinamik 13:26, 5 ноября 2010 (UTC)
Вроде такой возможности нет. Можно использовать хак: в user-config.py:
usernames['wikipedia']['ru'] = u'My Ru Bot'
usernames['wikipedia']['en'] = u'My En Bot'
class MyUserNames(dict):
    def __getitem__(self, key):
        if key in self:
            return dict.__getitem__(self, key)
        return u'My Global Bot'
usernames['wikipedia'] = MyUserNames(usernames['wikipedia'])
del MyUserNames

Будет использоваться логин 'My Global Bot' для всех сайтов с family='wikipedia', кроме тех, что явно указаны раньше. (Особо не тестировалось, при использовании login.py вроде работает) --Lankier 15:59, 4 ноября 2010 (UTC)

Спасибо! В явном виде авторизацию не показывает, но, судя по приветственным сообщениям, она происходит (причём не только в Википедии, но ещё и, например, в commons, и wikinews) Dinamik 13:26, 5 ноября 2010 (UTC)
Чтобы залогиниться на все разделы, указанные в config'e можно пользовать login.py -all -passDnikitin 21:36, 5 ноября 2010 (UTC)

Списки больших категорий[править код]

Можно ли каким-то образом получить полный список статей, включённых в большую категорию, наподобие Категория:Многозначные термины? AWB даёт только первые 25000 включений. Устроило бы и если было бы можно получить те же 25000, но не с начала, а с включения № n. --Владимир Иванов 16:01, 23 октября 2010 (UTC)

AWB даёт и больше, но при выполнении определённых условий. Нужно включить специальный скрипт и по-моему флаг бота или администратора нужен. Если детали интересуют — поищу. --Obersachse 16:18, 23 октября 2010 (UTC)
Да, Томас, ты прав. Нужен флаг бота или админа. Тогда доступен специальный плагин. --Michgrig (talk to me) 16:19, 23 октября 2010 (UTC)
Флаг бота есть. А что за скрипт? --Владимир Иванов 20:18, 23 октября 2010 (UTC)
В интерфейсе AWB идете в меню Plugins --> Load, выбираете папку на диске, где находится AWB, в ней подпапку Plugins и затем NoLimitsPlugin. После этого в списке Source появляются дополнительные записи. --Michgrig (talk to me) 20:22, 23 октября 2010 (UTC)
Спасибо, работает! --Владимир Иванов 22:08, 23 октября 2010 (UTC)

Делает что-то странное, на страницах участников меняет {{float center}} на {{float right}}. Дворкин Баримэн (Princenoire) оБс 19:06, 9 октября 2010 (UTC)

Это правильно. Первый шаблон был перенаправлением на второй. --Obersachse 19:59, 9 октября 2010 (UTC)
тогда прошу прощения, просто слежу за страницами некоторых участников(переписка). И вижу массовую смену шаблонов. Дворкин Баримэн (Princenoire) оБс 20:02, 9 октября 2010 (UTC)

Бот для категорий[править код]

Совершаю много правок по редактированию категорий(объединение, создание новых). Нужен бот для этих целей. Попытка написать самому окончилась неудачей(не разобрался что редактировать). Прошу подсказать. Дворкин Баримэн (Princenoire) оБс 09:02, 7 октября 2010 (UTC)

В составе pywikibot есть скрипт category.py. Может он сгодится для Ваших задач? --Volkov (?!) 10:09, 7 октября 2010 (UTC)
Его я видел, только в создании бота нифига не разобрался. Есть учетка даже для него. И в каталог скопированный pywiki. Ну распаковал я его захожу в командную строку. А дальше что?(вопросы будут сразу говоря тупые, но я не хочу что-то испортить) Дворкин Баримэн (Princenoire) оБс 10:24, 7 октября 2010 (UTC)
В тексте скрипта в самом начале описан синтаксис для различных задач. --Volkov (?!) 17:24, 7 октября 2010 (UTC)
Спасибо, буду пробывать. Дворкин Баримэн (Princenoire) оБс 17:32, 7 октября 2010 (UTC)

Просьба пустить бота на исправление неправильных ссылок вида Лимассол. dima 13:28, 6 октября 2010 (UTC)

Заявки на работу для ботов лучше писать на ВП:РДБDnikitin 15:52, 6 октября 2010 (UTC)
А, ОК. dima 16:13, 6 октября 2010 (UTC)

AWB и вопросы[править код]

  • Пользуюсь AWB буквально пару дней, вопрос, нужно удалить из шаблона:НП один из параметров (пример: [3]), после остаётся пробел, как его убрать?
  • В функции Options ставлю галочку в Apply general fixes, бот делает пару правок затем затирает всю статью (пример: [4]), это как-то лечится? --Latitude 11:01, 2 октября 2010 (UTC)
  • Не уверен, но попробуйте заменить "\|ЯндексКарта\s*=\s*\|" на "|" (в режиме "Multiple line"?).
Работает, спасибо. --Latitude 13:27, 2 октября 2010 (UTC)

Глюк не в AWB, но где?[править код]

Коллеги, давно мучаюсь со странностью: AWB (все версии, которыми я пользовался, кончая 5030) закрывает сессию, если я правлю страницу в «Edit box» руками более 20 секунд. Когда я пытался разобраться с проблемой в службе поддержки, мне было сказано, что проблемы не в AWB, а в сервере рувики. Вероятно, они правы, но что же делать? Невозможность редактировать страницу более 20 секунд (после чего вся правка теряется) довольно сильно достаёт. Это наблюдалось у меня на двух разных компьютерах с разными настройками, подключенными к разным сетям (сейчас проверил с 3-го компьютера в 3-й сети). Неужели я один так мучаюсь? --Владимир Иванов 16:04, 1 октября 2010 (UTC)

Это зависит от времени суток, нагрузки сервера, солнечного излучения, … Иногда никаких временных ограничений нет, иногда и трёх секунд многовато. Моя рекомендация — попить чая и попробовать в другой раз. --Obersachse 17:14, 1 октября 2010 (UTC)
Полгода пробую. Исключений не было. 20 секунд — и рестарт. --Владимир Иванов 17:41, 1 октября 2010 (UTC)
У меня есть идея предложить разработчикам сделать так, чтобы отредактированное хотя бы не терялось при рестарте (сделать какую-то опцию типа «Сохранять изменения при рестарте»). Но вряд ли они будут это делать ради меня одного, поэтому хотелось бы понять ситуацию с распространённостью данного явления. --Владимир Иванов 12:19, 2 октября 2010 (UTC)
Давно уж не запускал AWB, но помнится, действительно, бывало, что терялся токен и статья грузилась заново, особенно если объём статьи/изменений был достаточно большой. Раздражает :( Но там где-то, если не ошибаюсь, должна быть опция сохранять окно редактирования через определённый интервал времени в файл EditBox.txt --Volkov (?!) 12:36, 2 октября 2010 (UTC)
В моём случае можно просто подождать 20 секунд, ничего не редактируя — рестарт будет всё равно. Касательно сохранения — как я понимаю, затем сохранённый файл нужно загрузить? Тогда это не слишком поможет, если делать не серьёзные изменения в одной статье, а много мелких в разных. Замучаешься загружать. --Владимир Иванов 13:40, 2 октября 2010 (UTC)
Я выяснил, что независимо от галки "Automatically save edit box" перед записью на сервер окно где-то сохраняется, и его можно загрузить командой "Replace the text with last edit". Стало полегче, спасибо за подсказку. --Владимир Иванов 14:10, 2 октября 2010 (UTC)

Прошу прошения может я не по адресу, но кому задать этот вопрос не знаю. Где можно посмотреть примеры ботов на Perl? Тут Википедия:Боты/Исходные коды ничего нет :( И еще почему в FAQ упомянут PHP, как язык написания ботов, а в Википедия:Бот нет? Ничего не понятно! Как написать бота на PHP? Ink в 10:07, 1 октября 2010 (UTC)

Примеры тут. Там их два: mr.pl и r.pl. Для обоих требуется Perlwikipedia.pm. Mashiah 21:18, 19 октября 2010 (UTC)

Новая заявка на статус бота[править код]

Поскольку бот необычный, стоит участвовать в обсуждении. --Obersachse 12:08, 25 сентября 2010 (UTC)

Список замен из файла[править код]

Коллеги, скажите, пожалуйста, есть ли возможность "скормить" awb список желаемых замен из файла? Хочу прогнать разрешение неоднозначностей сразу по многим пунктам (конкретные замены по мос.улицам, без анализа). Сформировать список исходных и целевых выражений мне удобнее в ворде, а вот, создав нужные параметры замены, по одному их переносить оттуда в awb что-то очень лениво :-) --Michgrig (talk to me) 20:44, 6 сентября 2010 (UTC)

Прошу прощения. Только я открыл эту тему, уже сам сообразил, что это делается через xml с настройками. --Michgrig (talk to me) 20:59, 6 сентября 2010 (UTC)

Реорганизация РДБ[править код]

Коллеги, предлагаю реорганизовать ВП:РДБ, чтобы оно работало по принципу ВП:ЗКА. На закрытые (выполненные или отклоненные) запросы ставится подзаголовок === Итог ===, и по истечении определенного времени такие запросы автоматически архивируются. --Michgrig (talk to me) 07:36, 6 сентября 2010 (UTC)

С этой частью согласен, но надо архивировать и невыполненные через N-ный срок, иначе будет завал rubin16 10:12, 6 сентября 2010 (UTC)
Ну, Клейморбот же умненький (в терминах Василия Зимина :-)), его можно попросить делать и то, и другое). А сейчас архивация происходит вручную? --Michgrig (talk to me) 10:17, 6 сентября 2010 (UTC)
Ага :-( rubin16 10:28, 6 сентября 2010 (UTC)
ОК, сейчас попрошу Алексея. Только еще вопрос: нужно ли под это как-то реорганизовать архив заявок? --Michgrig (talk to me) 10:31, 6 сентября 2010 (UTC)
На усмотрение Клейморбота. Он же умненький. ;-) --Obersachse 15:03, 6 сентября 2010 (UTC)
как то все сложно. Сейчас практика такая. Если стоит шаблон {{done}}, он же {{Сделано}}, то заявка считается условно выполненой. После того, как заявитель проконтролирует выполнение и напишет "Спасибо", заявка закрывается парой {{closed}}{{ecs}}. — Dnikitin 16:55, 6 сентября 2010 (UTC)
Соответственно если секция закрыта, то ее можно архивировать. Если стоит {{done}}, то видимо ее тоже можно рассматривать как подлежащую к архивации. — Dnikitin 16:56, 6 сентября 2010 (UTC)
Лично мне, как ботоводу, ничуть не сложнее ставить «Итог» вместо {{done}}. А вид прошлых архивов — как захочет бот, главное чтобы удобочитаемо было rubin16 17:07, 6 сентября 2010 (UTC)
Коллеги, сейчас бот умеет архивировать а) с задержкой секции с подсекцией «Итог» и б) без задержки секции с некоторой ключевой фразой (одной). Я могу допилить его в произвольную сторону, но смогу этим заняться в лучшем случае через две недели (сейчас я довольно загружен IRL). — Claymore 17:30, 6 сентября 2010 (UTC)
А как же архивация форумов? Там разве используется какая-то ключевая фраза? Насколько я понял из ваших объяснений, там просто идет задержка по отношению к последней реплике. --Michgrig (talk to me) 17:52, 6 сентября 2010 (UTC)
Да, можно настроить архивацию просто от последних реплик, правда, этот вариант исключает вариант «а». — Claymore 17:58, 6 сентября 2010 (UTC)
Мне все-таки кажется, что в данном случае архивация без задержки по ключевой фразе не очень хороша. Думаю, надо даже после закрытия запроса некоторое время оставлять его на странице (на всякий случай). Так что, если коллеги-ботоводы согласны, считаю, что можно для начала настроить архивацию по "Итогу" --Michgrig (talk to me) 18:57, 6 сентября 2010 (UTC)
Мне претит добавлять подсекцию Итог. Итог чего? Больше похоже на "костыль", чем на решение. — Dnikitin 20:29, 6 сентября 2010 (UTC)
"Итог чего?" - запроса. Почему костыль? А на КУ и ЗКА это тоже костыль? --Michgrig (talk to me) 20:37, 6 сентября 2010 (UTC)
Up! --Michgrig (talk to me) 16:15, 11 сентября 2010 (UTC)
Так мы уйдем от темы. На КУ и ЗКА требуется ответственное решение администратора. На странице РДБ выносятся только работы, которые не требуют обсуждения (все обсуждения должны быть уже завершены и решение принято) ДО запроса на РДБ. В общем нужно плясать от Claymore. Какую фунцкциональность он сможет реализовать такую и принять. — Dnikitin 17:38, 11 сентября 2010 (UTC)
Ну, он же сказал, что сейчас возможны 2 варианта - архивация через указанное кол-во дней после последней правки и после простановки ключевой фразы. Давайте сделаем, скажем, через месяц после последней правки --Michgrig (talk to me) 17:48, 11 сентября 2010 (UTC)
А мне в свою очередь скорее интереснее, какая функциональность должна быть :-) — Claymore 17:57, 11 сентября 2010 (UTC)
Из текущей практики следует архивировать:
  1. запросы с {{done}} и редиректами через N дней (обычно неделя-другая)
  2. запросы, в которых {{сделано}} нет, а первая реплика темы старее M дней (обычно 2 месяца)
  3. запросы с {{отклонено}} через N дней rubin16 19:07, 11 сентября 2010 (UTC)

Интервики дизамбигов и боты[править код]

ClaymoreBot 04:49, 22 августа 2010 (UTC)

Удаление изображений[править код]

Уважаемые ботоводы, ктонибудь кроме BotCat занимается удалением изображений из статей?

Хотелось бы, чтобы после удаления изображения бот ставил ещё соответствующий шаблон, rq|img или {{нет иллюстраций}} по необходимости. --Drakosh 19:16, 16 августа 2010 (UTC)

Дополнение: в случае, если в статье не осталось изображений. --Obersachse 19:24, 16 августа 2010 (UTC)

С 12 августа не обновляется Википедия:К удалению. Что-то случилось с ботом?--IgorMagic 16:54, 15 августа 2010 (UTC)

Да, почти неделю были технические проблемы с сервером, на котором работал бот, поэтому мне приходилось запускать его вручную. Сейчас бот работает в штатном режиме. — Claymore 08:04, 16 августа 2010 (UTC)

Обработка страниц с точкой в названии[править код]

В принципе только-только вникаю в ботоводство. Пользуюсь библиотекой DotNetWikiBot. Возникла такая проблема: загружаю в pagelist список страниц Инкубатора (исключаю если необходимо лишние), обрабатываю все страницы в списке foreach (page n in pl), всё замечательно, но! Когда дело доходит до сохранения страниц, бот вылетает если заголовок страницы n.title заканчивается на точку ".". Причем больше всего удивляет как раз то, что он страницу загружает (Load(), LoadEx()), обрабатывает ее как нужно, но вылетает именно при сохранении. Ей-Богу не могу понять в чем дело и как с этим быть? PS. Пока приходится вообще такие страницы исключать из обработки, и сохранять их список в текстовый файл, и если есть необходимость потом проходиться по ним ручками... - Dmitry89 (обс.) 13:05, 1 августа 2010 (UTC)

Есть такое дело. Однако, если внимательно рассмотреть результаты, то окажется, что страницы всё-таки сохраняются, а ошибка вываливается позже. То есть если поставить лишний try-catch, то проблема решается.
А вообще, обо всех косяках можно сообщить разработчикам — [5]. --Emaus 13:32, 1 августа 2010 (UTC)
Спасибо, надо будет попробовать... - Dmitry89 (обс.) 23:02, 3 августа 2010 (UTC)

DotNetWikiBot[править код]

Не получилось почему-то получить целиком список названий страниц из DotNetWikiBot.PageList.FillFromAllPages (версия DotNetWikiBot 2.94 + Ms Visual C# 2010 экспресс).

Site site = new Site("http://ru.wikipedia.org", "Besuglov.Sbot", "");
PageList pl = new PageList(site);
pl.FillFromAllPages("", 4, true, 700);

Не получаются только многоходовые запросы, т.е. без флага бота > 500. Беру 700 заголовков.

В библиотеке, мне кажется здесь (код из DotNetWikiBot.cs::FillFromCustomBotQueryList), для заполнения переменной next ищется почему-то continueAttrTag, который у меня равен apcontinue, а next вроде записан в apfrom.

Next — пустует и цикл завершается раньше времени.

Не подскажите в чём я мог ошибится?

do {
    queryFullUri = queryUri;
    if (next != "")
        queryFullUri += "&" + prefix + "continue=" + HttpUtility.UrlEncode(next);
    src = site.PostDataAndGetResultHTM(queryFullUri, queryParams);
    using (XmlTextReader reader = new XmlTextReader(new StringReader(src))) {
        next = "";
        while (reader.Read()) {
            if (reader.IsEmptyElement && reader[attrTag] != null)
                pages.Add(new Page(site, HttpUtility.HtmlDecode(reader[attrTag])));
            if (reader.IsEmptyElement && reader[continueAttrTag] != null)
                next = reader[continueAttrTag];
        }
    }
}
while (next != "" && pages.Count < quantity);

Besuglov.S вкл / обс 12:40, 22 июля 2010 (UTC)

С такой заменой кода в моём случае заработало, но может я его просто неправильно как-то использую?

if (reader.IsEmptyElement && reader["apfrom"] != null)
    next = reader["apfrom"];

Besuglov.S вкл / обс 13:06, 22 июля 2010 (UTC)

Поторопился. Не работает :-) Besuglov.S вкл / обс 13:11, 22 июля 2010 (UTC)

Вроде работает :-) если в строке 3219 тоже заменить continue на from. Может это недавняя замена в API? Besuglov.S вкл / обс 13:24, 22 июля 2010 (UTC)

Написал им. Наверное их ошибка? Besuglov.S вкл / обс 13:30, 22 июля 2010 (UTC)

Разделение сносок[править код]

Иногда встречаются сноски с несколькими ссылками внутри. Типа <ref>http://aaa, http://bbb</ref>. Здесь, например их много: сноски № 21, 25, 26 и т. д. Имеет ли смысл такие сноски разделять на несколько? Одна сноска — одна ссылка. --Lankier 14:35, 28 июня 2010 (UTC)

В данном случае, это разумно. Но бота пускать это делать нельзя, так как бывают ссылки вида <ref>http://ссылка_на_новость http://ссылка_на_информагенство </ref> Ashik talk 15:52, 28 июня 2010 (UTC)
А если проверять на совпадение домена второго уровня? Если домены одинаковые — ничего не делать. --Lankier 16:08, 28 июня 2010 (UTC)

Странное поведение AWB[править код]

AWB начал делать какие-то странные вещи с ключами сортировки категорий. Вот пример. У меня тоже было подобное, я заметил и убрал, но не придал значения, решил, что это у меня какой-то глюк. А потом наткнулся на это. --Морган 18:24, 20 июня 2010 (UTC)

Тоже встречался, думал локальный баг и пропустил… видимо нет rubin16 18:43, 20 июня 2010 (UTC)
Тоже встречался с этим. Нажал skip и забыл. --Obersachse 20:28, 20 июня 2010 (UTC)
И вместо «л» иногда подставляет латинскую «l» там же. Lazyhawk 21:10, 20 июня 2010 (UTC)
Это как-то разрешилось? AWB пользуюсь редко, но подмену «л» на «l» тоже замечал. Причем, похоже, именно после "|". --Samal 13:20, 1 августа 2010 (UTC)
Похоже, не разрешилось. Я вчера тоже с этим столкнулся. Поправлял прямо в окне редактирования. — Cantor (O) 17:38, 4 августа 2010 (UTC)
en:Wikipedia talk:AutoWikiBrowser/Bugs#categories and general fixed — описал rubin16 18:49, 19 августа 2010 (UTC)
Поправили в версии 7018. --Michgrig (talk to me) 08:06, 20 августа 2010 (UTC)
Коллеги, объясните, пожалуйста. Можно ли как-то скачать эту версию или придется ждать следующий релиз? --Michgrig (talk to me) 18:20, 3 сентября 2010 (UTC)
http://toolserver.org/~awb/snapshots/ ? --Obersachse 18:41, 3 сентября 2010 (UTC)
О, супер, спасибо! Может, эту ссылку добавить на страницу Википедия:AWB? --Michgrig (talk to me) 18:45, 3 сентября 2010 (UTC)
Правь смело! --Obersachse 18:46, 3 сентября 2010 (UTC)
✔ Сделано :-) --Michgrig (talk to me) 18:57, 3 сентября 2010 (UTC)

Проблема с логином[править код]

Тут после значительного перерыва решил бота прогнать, но чего валится при входе, раньше было все ок, да и если в ручную заходить проблем с паролем нету, но вот когда бот заходит дает ошибку: "Ошибка опознавания участника Похоже, возникли проблемы с текущим сеансом работы; это действие было отменено в целях предотвращения «захвата сеанса». Пожалуйста, нажмите кнопку «Назад» и перезагрузите страницу, с которой вы пришли". Чтобы это могло значить ? S.J. 18:41, 25 мая 2010 (UTC)

Какой бот? Pywikipediabot? Какая версия? Самая свежая? --Obersachse 18:59, 25 мая 2010 (UTC)
TacBot, C#, DotNetWikiBot Framework v2.7 .. что-то менялось в области логина, или это временный глюк ? S.J. 19:27, 25 мая 2010 (UTC)
Тут я к сожалению не могу помочь. DotNetWikiBot мне неизвестен. --Obersachse 19:39, 25 мая 2010 (UTC)
  • Тут дело не в боте, может кто знает в каких случаях выдается такая ошибка. Например, когда логинишся с пустым паролем - пишет "Введите непустой пароль", когда с не правильным, пишет "Введённый вами пароль неверен. Попробуйте ещё раз.". А тут что-то новенькое (см. выше), что значит "в целях предотвращения «захвата сеанса»" ? S.J. 19:48, 25 мая 2010 (UTC)
  • Отбой, похоже какие-то проблемы со связью были ... прошло почти само .. S.J. 20:17, 25 мая 2010 (UTC)

В апреле API авторизации менялось — теперь оно проходит в два этапа, см. [6]. На первом этапе сервер отвечает "NeedToken", что может восприниматься как ошибка. Вероятно, так у вас и происходит. Я писал по этому поводу — Википедия:Форум ботоводов/Архив/2010#Изменения в API авторизации, там есть пример кода моего бота, надеюсь, вам поможет. -- Sergey kudryavtsev 20:23, 25 мая 2010 (UTC)

  • Спасибо, это многое объясняет, я тут успел версию обновить до DotNetWikiBot Framework v2.91 - она то и заработала, хотя по диагонали я не заметил изменений в этом месте ... но похоже помогло .. S.J. 20:29, 25 мая 2010 (UTC)

Проблема[править код]

Кое-что сделал, дабы сотворить бота, но застрял. SOS! Имя бота - БимБот--Басов иван 12:54, 27 апреля 2010 (UTC)

В чем проблема-то? На чем написан бот, как работает, какие ошибки ? rubin16 13:08, 27 апреля 2010 (UTC)

Здравствуйте! Не мог бы кто-нибудь пройтись по статьям из этой категории (их там 36) и заменить {{Орден короля Томислава}} на {{Орден Короля Томислава}}? Заранее спасибо. Kobac 15:41, 26 апреля 2010 (UTC)

Я думаю, на ВП:РДБ вам помогут быстрее. — Claymore 15:49, 26 апреля 2010 (UTC)
А лично мне кажется, что подобная массовая замена, не имеющая никакого значения для читателей статей, вообще и не нужна. — AlexSm 15:53, 26 апреля 2010 (UTC)
Например, для того, чтобы навсегда удалить старый шаблон, пресекая его дальнейшее использование. — Dnikitin 01:45, 27 апреля 2010 (UTC)
Ваша правда, рекомендацию дал на автомате. Действительно, достаточно использовать новый шаблон, не обращая внимания на вхождения старого. 16:04, 26 апреля 2010 (UTC)
Пардон, не туда запостил. Нужно на ВП:РДБ, конечно. Сейчас скопирую туда. Проблема в том, что я заменил в шаблоне категорию Категория:Кавалеры ордена короля Томислава на Категория:Кавалеры ордена Короля Томислава, а на статьях это почему-то никак не отразилось. Они всё равно остаются в старой категории. То ли глюк, то ли у меня что-то с кэшем, то ли ещё что-то. Kobac 16:40, 26 апреля 2010 (UTC)

Викицитатник[править код]

Если в вики переименовывается статья, то ссылки на викицитатник приходится править руками (наоборот видимо тоже актуально). Может можно к этому делу приспособить бота? Вот пример такой правки. Saidaziz 20:06, 24 апреля 2010 (UTC)

Бот-«вандал» в Якутской Википедии[править код]

Какой-то там американский бот en:user:CommonsDelinker удаляет изображения из статей! Кто разрешил? Как его блокировать?

The file Image:Sims3Cover-Art.jpg has been removed, as it has been deleted by commons:User:Martin H.: Copyright violation: non-free album cover, no fair use on Commons.

Посмотрите историю статьи из сахавики: The Sims 3Иннокентий Т.:) 09:36, 17 апреля 2010 (UTC)

Этот бот убирает из статей удалённые на Викискладе изображения. Конкретно это изображение было удалено участником commons:User:Martin H. из-за нарушения авторских прав и правил использования Викисклада — там не должно быть несвободных изображений. — Claymore 10:03, 17 апреля 2010 (UTC)
Очень полезный бот и вовсе не вандал. Он убирает красные ссылки на удалённые изображения. --Obersachse 16:43, 17 апреля 2010 (UTC)

Установка значения «досмотрена» с помощью бота[править код]

Каким образом с помощью бота (pywikipediabot) можно установить значение «досмотрена» и «выверена» для статей определенной категории или другого диапазона? С уважением, ChVA 11:31, 9 апреля 2010 (UTC)

Изменения в API авторизации[править код]

Хочу обратить внимание на изменения в API. Лично мне пришлось внести в код моего SKbot'a соответствующие изменения. -- Sergey kudryavtsev 11:31, 7 апреля 2010 (UTC)

  • Спасибо, я свою библиотеку тоже обновлю. — Claymore 12:04, 7 апреля 2010 (UTC)
  • Теперь pywikipedia не авторизует, выдаёт Login failed. Wrong password or CAPTCHA answer?. Что бы такое подкрутить, чтобы заработало?:) -- — Эта реплика добавлена участником Dinamik (ов)
    Ты используешь свешую версию pywikipedia? У меня никаких проблем нет. --Obersachse 21:57, 8 апреля 2010 (UTC)
    Ранее пробовал обновлять через SVN. Сейчас закачал заново свежую версию pywikipedia, заново создал user-config.py через generate_user_files.py — проблема не исчезла. Что любопытно, в сгенерированном user-config.py даже нет строки use_api = true (помнится, когда-то я добавлял её вручную после того, как на стороне wikimedia что-то изменилось и пользователи стали думать, что бы такое изменить, чтобы pywikipedia продолжала работать). Dinamik 22:32, 8 апреля 2010 (UTC)
    У меня тоже наблюдается эта проблема. Зафайлен баг https://sourceforge.net/tracker/?func=detail&aid=2983182&group_id=93107&atid=603138 где говориться, что нужно прописать use_api_login = True Но мне это тоже не помогло. — Dnikitin 12:21, 9 апреля 2010 (UTC)
    А вот вроде бы и заработало. — Dnikitin 12:26, 9 апреля 2010 (UTC)

Я сам на Python'е не программирую, но если вы программист, то можете сами попробовать исправить. У меня это выглядит так:

procedure TMWConnection.Login(const s_username, s_password: WideString);
var
  xmlDoc: IXMLDOMDocument;
  xmlNode: IXMLDOMNode;
  s_result, s_token: WideString;
begin
  xmlDoc := PostRequest(FBaseURL + 'api.php?action=login&format=xml', 'lgname='+EncodeString(s_username)+'&lgpassword='+EncodeString(s_password));
  s_result := '';
  if xmlDoc <> nil then begin
    xmlNode := xmlDoc.selectSingleNode('api/login');
    if xmlNode <> nil then
      s_result := GetStrAttributeDef(xmlNode, 'result', '');
  end;
  // Due to patch (see https://bugzilla.wikimedia.org/show_bug.cgi?id=23076)
  if s_result = 'NeedToken' then begin
    Assert(xmlNode <> nil);
    s_token := GetStrAttribute(xmlNode, 'token');
    xmlDoc := PostRequest(FBaseURL + 'api.php?action=login&format=xml', 'lgname='+EncodeString(s_username)+'&lgpassword='+EncodeString(s_password)+'&lgtoken='+EncodeString(s_token));
    s_result := '';
    if xmlDoc <> nil then begin
      xmlNode := xmlDoc.selectSingleNode('api/login');
      if xmlNode <> nil then
        s_result := GetStrAttributeDef(xmlNode, 'result', '');
    end;
  end;
  if s_result = 'Success' then begin
    FLoginState := LS_LOGGGED;
    FLoginInfo.n_user_id        := GetIntAttribute(xmlNode, 'lguserid');
    FLoginInfo.s_user_name      := GetStrAttribute(xmlNode, 'lgusername');
    FLoginInfo.s_login_token    := GetStrAttribute(xmlNode, 'lgtoken');
    FLoginInfo.s_cookie_prefix  := GetStrAttribute(xmlNode, 'cookieprefix');
    FLoginInfo.s_session_id     := GetStrAttribute(xmlNode, 'sessionid');
  end
  else begin
    FLoginState := LS_UNLOGGGED;
    FLoginInfo.n_user_id        := 0;
    FLoginInfo.s_user_name      := '';
    FLoginInfo.s_login_token    := '';
    FLoginInfo.s_cookie_prefix  := '';
    FLoginInfo.s_session_id     := '';
    if s_result = '' then
      raise EMWException.Create(SLoginFailed)
    else
      raise EMWException.CreateFmt(SLoginFailedReason, [s_result]);
  end;
  xmlNode := nil;
  xmlDoc := nil;
end;

Мне пришлось добавить if s_result = 'NeedToken' then и т. д. -- Sergey kudryavtsev 06:53, 8 апреля 2010 (UTC)

Перенос параметров из одного шаблона в другой[править код]

Есть ли в AutoWikiBrowser возможность переноса параметров из одного шаблона в другой? Я пока этот запрос выполняю двумя правками, но хочется одной. Идеи есть? --Obersachse 14:25, 19 марта 2010 (UTC)

Использовать могучее регулярное выражение со многими переменными. По идее, должно получиться. Wind 23:15, 24 марта 2010 (UTC)
Подскажешь общую схему? «Найди то (или это) и замени на то» - я умею выражать регэкспами. Но «найди то (или это) и замени на то в таком-то (другом) месте» - для меня загадка. --Obersachse 18:04, 25 марта 2010 (UTC)
В данном случае, когда шаблон {{coord}} стоит прямо над шаблоном {{мост}}, можно заменять кусок, начинающийся от {{coord и заканчивающийся {{Мост Т.е примерно так:
\{\{coord(.*?)\{\{Мост заменять на {{Мост|$1 
если же между шаблонами что-то есть, то это что-то можно пробовать ловить при помощи (.*?) и вставлять в результат. Wind 11:14, 26 марта 2010 (UTC)
К сожалению шаблон coord в статье стоит где угодно (в начале, посередине, близко к концу, даже внутри шаблона «Мост») и его параметры заполнены по-разному (пара десятков варианта). coord|12|23|34|N|89|78|67|E|display=title|region:ru|scale=2000 или coord|12|-23 или coord|12|23|N|89|78|E|region:ru или coord|scale=2000|display=title|12|23|34|N|89|78|67|E|region:ru или ... --Obersachse 11:43, 26 марта 2010 (UTC)

Как я понимаю, после последнего обновления AWB в комплект стандартных исправлений включена расстановка шаблона {{orphan}}, который больше года являлся перенаправлением на {{Изолированная статья}}. Так как алгоритм расстановки этого шаблона мне неизвестен и он явно не совпадает с алгоритмами проекта Связность, то я удалил перенаправление как некорректное по смыслу. Считаю, что требуется найти способ отключения простановки этого шаблона. За его расстановкой замечены WindBot, BotUser№101, VIbot. --Rave 20:57, 18 марта 2010 (UTC)

Если в AWB отключить autotag, то он этот шаблон расставлять не будет. Wind 23:16, 24 марта 2010 (UTC)
При этом отключается авторасстановка и каких-то других потенциально полезных тэгов. Поэтому хорошо бы разобраться, почему AWB так странно работает с сиротами. --Владимир Иванов 14:25, 25 марта 2010 (UTC)
Надо к разработчикам обращаться. Было бы неплохо, чтоб автотэггинг можно было бы более тонко настраивать. Wind 11:05, 26 марта 2010 (UTC)
"отключается авторасстановка ... других потенциально полезных тэгов" - что значит каких-то? Каких именно? В том, что написано в Manual я не вижу чего-то особо полезного. Alex Spade 11:08, 3 апреля 2010 (UTC)

Поиск дублирующих ссылок[править код]

Есть ли боты, которые в статье ищут дублирующие ссылки (иногда одна ссылка ставится несколько раз)? --Debian07 12:55, 15 марта 2010 (UTC)

Вы имеете в виду внешние ссылки или внутренние? --Владимир Иванов 14:46, 15 марта 2010 (UTC)
Внешние. Иногда в процессе написания статьи, особенно несколькими участниками, в разных местах даются ссылки на одну и ту же внешнюю статью каждый раз заново, без использования <ref name=???>. В результате в разделе Примечания присутствуют несколько одинаковых ссылок. --Debian07 17:46, 15 марта 2010 (UTC)
в pywikipedia framework есть скрипт reflinks.py. см. секцию возможности скрипта, последний пункт. Наверное, что то подобное есть и в АWBDnikitin 18:01, 15 марта 2010 (UTC)
Спасибо, то, что нужно. --Debian07 18:48, 15 марта 2010 (UTC)

Некорректная интервика[править код]

Некорректные интервики добавлены в статью Внеземная цивилизация ботом Участник:JAnDbot. Как откатить? Товарищ видно не наш, так что пишу сюда. Saidaziz 16:58, 10 марта 2010 (UTC)

  • Можно попробовать обратиться непосредственно к ботовладельцу в его родном проекте. — Cantor (O) 13:00, 11 марта 2010 (UTC)
  • Ни при каких обстоятельствах не следует просто откатывать правки интервики-бота - это абсолютно пустая трата времени. Ошибки не сваливаются ниоткуда, и если их не исправить, то любой бот может повторить то же самое. Причём исправлять нужно сразу во всех языковых разделах. Если вручную это не получается, то нужно просить ботовладельца. Но в любом случае затевать войну откатов с ботом бессмысленно. В данном случае бот проследовал по редиректу. --Volkov (?!) 21:47, 11 марта 2010 (UTC)

Вопрос по работе интервики-ботов[править код]

Я вчера обратился с вопросом к Томасу, но как-то взаимопонимания с ним не нашёл. Суть вопроса: интервики-боты удаляют корректные интервики на википроекты, которые в некоторых разделах находятся в отдельном пространстве имён: [7]. Причём, как выясняется, в некоторых случаях интервики на нетрадиционные пространства сохраняются, в частности, боты не удаляют интервики из основного пространства на португальское пространство Anexo (Список): pt:Anexo:Lista de aviões. Может ли кто-то составить запрос к разработчикам интервики-ботов с тем, чтобы как-то обработать эту ситуацию? Насколько это может быть сложно? AndyVolykhov 19:14, 8 марта 2010 (UTC)

Хм… сейчас попробую написать rubin16 19:52, 8 марта 2010 (UTC)

Я сделал автоматический разбор этой категории ботом, теперь статьи, попадающие в категории-дубликаты, переносятся куда надо, двойные редиректы правятся (например, [8]). Поэтому просьба к ботоводам — если переименовываете категории (причём переименование осмысленное, не «ПИЧАТНЫЕ МАШИНКИ» → «Печатные машинки»), то просьба старую категорию не удалять как пустую, а вносить в дубликаты. Так снизим шанс создания одних и тех же категорий и повторения обсуждений :-). rubin16 19:18, 5 марта 2010 (UTC)

Надо при воссоздании ранее удаленной категории приводить причину удаления, возможно с указанием обсуждения. Плюс. Удаляют категории, не ботоводы, а администраторы, поэтому это просьба скорее к ним. — Dnikitin 16:09, 6 марта 2010 (UTC)
Ну… при переносе шаблон «к удалению» ставится либо ботом (стандартная работа category.py), либо ботовод сам ставит желаемые шаблоны. Кросспостну на ФА rubin16 16:52, 6 марта 2010 (UTC)
Не знаю, не знаю. Если оставим неправильные категории, то ссылка на них будет синяя. Если же удалим, ссылка красная будет. Когда я наугад соотношу статью к категории и она в предпосмотре оказывается синней, то для меня это знак, что всё в порядке. Если она в предпосмотре красная, то это признак того, что что-то не в порядке и я ищу подходящую категорию. Я считаю, что удаление неправильных категорий стимулирует участников к поиску правильных, а не к воссозданию неправильных. --Obersachse 00:06, 13 марта 2010 (UTC)

Вопрос по AWB[править код]

Уместно ли здесь задавать вопросы по AWB?

А вопрос такой. Нажимаю кнопку Start, редактирую загруженную страницу 20 секунд, не выходя при этом из окна AWB. Затем нажимаю кнопку Save и вижу надпись «Restarting in … seconds», а затем страница загружается заново, причём все правки потеряны. Это баг или фича? Если второе — как её отключить? --Владимир Иванов 11:22, 5 марта 2010 (UTC)

Это всегда так? Как предположение — может на той странице кто-то успел сделать правку, пока Вы работали, бот и рестартится от этого rubin16 12:36, 5 марта 2010 (UTC)
Проверил в персональной песочнице, которую никто, кроме меня, не правит. Тот же эффект. Достаточно 10 секунд. --Владимир Иванов 13:23, 5 марта 2010 (UTC)
Рассмотрел появляющуюся при этом надпись в статус-баре. Она гласит: «The underlying connection was closed: A connection that was expected to be kept alive was closed by the server». Понятнее не стало. --Владимир Иванов 15:16, 5 марта 2010 (UTC)
Проблемы с интернет-соединением? Как вариант - обратиться сюда rubin16 15:28, 5 марта 2010 (UTC)
А как Вы получаете доступ к интернету? Возможно соединение рвется при простое более нескольких секунд, такое бывает если интернет идет через мобильный телефон. Rasim 18:28, 5 марта 2010 (UTC)
У меня выделенка 5 Mbs, пинг на ru.wikipedia.org — 45ms. Да и вообще — эффект стабильно воспроизводим, поэтому вряд ли дело здесь в скорости соединения. Я уже задал вопрос на en:Wikipedia talk:AutoWikiBrowser/Bugs --Владимир Иванов 20:08, 5 марта 2010 (UTC)
У меня такое тоже часто бывает. По-моему это знак большой нагрузки на сервера Википедии. Попробуй править в менее популярное время. Проблема скорее всего исчезнет. --Obersachse 00:09, 13 марта 2010 (UTC)
У меня такое бывает не просто "часто", но всегда без исключений, причём только при работе из дома. Так что дело, вероятно, в каких-то особенностях канала. Но не в скорости. --Владимир Иванов 10:17, 13 марта 2010 (UTC)

XML файлы[править код]

В википедии регулярно обновляются дампы XML (Database dump), в этих файлах содержатся все статьи того или иного раздела википедии, может у нас есть кто-нибудь кто может объяснить как извлекать данные из файла XML? --Latitude 12:20, 1 марта 2010 (UTC)

meta:Dump помогает? --Obersachse 16:01, 1 марта 2010 (UTC)
К сожилению там мало чего понятно. --Latitude 20:11, 2 марта 2010 (UTC)
Если вопрос по структуре, то там всё просто: последние версии страниц лежат в файле pages-articles.xml.bz2. Корневой тэг - <mediawiki>, в нём в порядке возрастания id лежат страницы (тэги <page>). По сути, больше ничего нет. Структуру можно посмотреть на примере какой-нибудь небольшой википедии (например, башкирской).
Если же вопрос - как подгружать многогигабайтные файлы с минимальными ресурсами, то, возможно, лучше всего написать своё собственное потоковое чтение без парсинга. Возможно, что какие-то базы данных могут работать по умному подгружать. --Emaus 08:13, 4 марта 2010 (UTC)

Статус бота для AWB?[править код]

Перенесено со страницы ВП:ЗКА#Статус бота для AWB?.

У меня следующий вопрос. В ВП:AWB рекомендуется завести себе бота, если частота правок будет более 1-2 в минуту. Поэкспериментировав с AWB, я понял, что могу время от времени заниматься, например, правками вот такого типа. Возможно, найду ещё подобную мелкую работу. Вся она, вероятно, будет вестись в полуавтоматическом режиме, со скоростью до 5-10 правок/мин. Что удобнее — делать это из-под основного эккаунта, или, действительно, создать бота (при том, что его работа, возможно, будет вестись не очень регулярно)? Имеется в виду удобство для сообщества, потому что мне, по большому счёту, всё равно. --Владимир Иванов 19:09, 28 февраля 2010 (UTC)

Одно из достойнств флага бота то, что бот не «замусоривает» список свежих правок. При исправлении орфографических ошибок или подобной «очистительной» работе это большой плюс. --Obersachse 19:42, 28 февраля 2010 (UTC)

боты без ботофлагов[править код]

Два бота без ботофлага (и, соответственно, без автопатрулирования): MWBot (обс. · вклад · журналы · блокировки · фильтры) и EleferenBot (обс. · вклад · журналы · блокировки · фильтры). -- AVBtalk 01:44, 18 февраля 2010 (UTC)

Первый заблокирован в связи с отказом во флаге, второму флаг присвоен. --Obersachse 10:06, 18 февраля 2010 (UTC)

Сборщик статистики[править код]

Можно сделать, чтобы у нас собиралась статистика с проектов, наподобие en:User:WP 1.0 bot/Tables/OverallArticles?~Sunpriat 11:29, 14 февраля 2010 (UTC)

  • У нас нет согласованного регламента аналогичного ан-википедийному WP 1.0. Пока что всё на уровне отдельных проектов - поэтому в таком виде это не выполнимый запрос. Но возможно, вы что-то имели в виду другое? Alex Spade 20:29, 25 февраля 2010 (UTC)

Как убрать авто-полужирный из Apply general fixes?[править код]

Проблема в том, что в нашей (be) Вики названия статей выделяются не только стандартным ''', во многих статьях выделение именно нестандартное. Поэтому автопроставление полужирного в 1-м появлении названия статьи мешает работе бота, приходится много руками отменять. Как это авто-проставление отключить, нигде такой настройки не нашёл? Спасибо. --Максим Л. 10:28, 7 февраля 2010 (UTC)

Галлерея → галерея[править код]

Нельзя ли быстренько пройтись ботом поправить орфографию. Можно и по другим словарным словам.
Навеяно стишком Монфорнота [9]. --Azgar 23:30, 4 февраля 2010 (UTC)

Это лучше в викификатор добавить. --Obersachse 23:42, 4 февраля 2010 (UTC)
✔ Исправлено - Butko 08:21, 5 февраля 2010 (UTC)

Аналогичная просьба. Выйграть → Выиграть; Выйгрыш → Выигрыш; Выйгравших → Выигравших; Выйграв → Выиграв и прочие производные. Можно, если не сложно, и в викификатор эту функцию добавить. FauustQ 20:10, 3 марта 2010 (UTC)

Об автоматическом поиске кандидатов в автопатрульные/патрульные[править код]

В опросе об анонимах возникла идея: можно несколько атоматизировать процесс поиска добросовестных участников. Предлагаю роботом просматривать вклад участников и искать тех, кто никогда не блокировался, чьи правки почти всегда патрулируются, почти никогда не откатываются, на ком не срабатывают серьезные фильтры и т.п. Соответственно, просим таких участников прочитать важнейшие правила (вроде ВП:АП) и выдаем флаг автопатрульного.


Возникает вопрос: какие из этих действий технически можно поручить боту? Rasim 11:04, 1 февраля 2010 (UTC)
Для справки, обсуждалось тут, частично тут. -- Samal 01:03, 6 февраля 2010 (UTC)

Боюсь, что для этого нужен доступ к тулсерверу, хотя некоторые идеи у меня есть (если будет время попробую составить список). — Claymore 11:31, 1 февраля 2010 (UTC)
Не обязательно сразу работающий код, пока хватит просто ответа на вопрос: что можно поручить боту, а что - нельзя? Rasim 02:08, 5 февраля 2010 (UTC)
Бот может просматривать вклад N участников, недавно сделавших правки, на предмет патрулирования их последних M правок и смотреть, блокировались ли участники и помечались ли их правки фильтром. N и M будут достаточно маленькие, 50—100. — Claymore 08:21, 5 февраля 2010 (UTC)
А на сколько реально анализировать откаченные/отмененные правки? На сколько реально анализировать ботом "удаленный вклад"? Samal 01:03, 6 февраля 2010 (UTC)
Кста, алгоритм, как понимаю, д.б. примерно такой: 1) участник не является патрульным/автопатрульным 2.1) "стаж" (т.е. общее кол-во правок в ОП) >=К (К=~100-500, надо обсуждать), 2.2) участник в данный момент достаточно активен в ВП (делает, допустим, хотя бы 10-20 правок в неделю) 3) смотрим блокировки, отмены/откаты, удаленный вклад, патрулируемость правок и т.п... Почему-то кажется, что после отсева по 1), 2.1) и 2.2) останется не более N=~10-20 участников в день, а то и меньше. И еще одно размышление: возможно, выносить на ВП:ЗСАП более чем 5-10 кандидатов в день - м.б. не очень разумно, ибо можно не успеть рассмотреть, либо качество рассмотрения может упасть.. Я к тому, что N по разным причинам, скорее всего, будет небольшим, около 5-10-20 канд./день, вряд ли больше. Возможно, это облегчит работу боту и уменьшит нагрузку на сервер. Samal 01:30, 6 февраля 2010 (UTC)
Такое предложение не отменяет необходимости анализа. Первичный отбор как бы. — Vort 18:17, 5 февраля 2010 (UTC)
Полагаю, виртуалы сами обращаются на ВП:ЗСАП. Advisor 20:05, 5 февраля 2010 (UTC)
  • Я составил примерный список: Участник:Claymore/Песочница. Алгоритм составления: берётся 5000 свежих отпатрулированных правок (не анонимных и не ботоправок), из них составляется список сделавших их участников. Из этого списка выбираются участники, которые ещё не обладают флагами патрулирующего, автопатрулируемого или администратора и которые сделали более 500 правок в основном пространстве. После этого бот проверяет журнал блокировок каждого участника и убирает тех, кто когда-то был заблокирован. Вклад оставшихся анализируется на предмет количества отпатрулированных правок. — Claymore 19:30, 6 февраля 2010 (UTC)
Прекрасно. Это именно то, чего я хотел, к тому же таких оказалось не тысячи, а всего десяток. Небольшие замечания: важно проверять чтобы участник никогда раньше не имел флага автопатрульного, потому что снятие флага говорит о серьезных нарушениях. Кроме того, может иметь смысл включать в список и тех, кто блокировался более полугода назад и с тех пор сделал 500 полезных правок. Можно даже генерировать два списка: участники с идеально чистым прошлым и участники, сделавшие большой вклад после последней блокировки. --Rasim 20:01, 6 февраля 2010 (UTC)
  • Роман Коротенко не умеет переименовывать статьи, переносит содержание копипейстом из одной статьи в другую. В 2008 году вносил копипаст. Нельзя давать флаг, как минимум, без обсуждения. Я отписывался на его СО.--Yaroslav Blanter 20:19, 6 февраля 2010 (UTC)
    Да, предполагается, что администратор будет просматривать СО и вклад участников перед присваиванием. Об автоматическом присваивании и речи быть не может. — Claymore 20:25, 6 февраля 2010 (UTC)
  • Возможно ли это предложение писать автоматически на СО участника? Очень хотелось бы избежать предварительного изучения вклада участника администраторами, так как при этом априори к кандидатам будет предвзятое отношение (то есть все будут держать в уме, что, скажем, Ярослав перед тем как предложить кандидату подать заявку уже изучил его вклад и больше это делать не стоит). --D.bratchuk 19:38, 7 февраля 2010 (UTC)
    Ни в коем случае. Легко придумать множество видов деструктивной деятельности, которую не сможет отфильтровать бот. Обязательно должен просматривать человек. А с предвзятым отношением можно справиться, например оставлять явные просьбы просматривать вклад. Кроме того, администратор может присваивать флаг автопатрульного и безо всякого обсуждения, под свою ответственность. Rasim 19:58, 7 февраля 2010 (UTC)
    Я не предлагаю присваивать флаги направо и налево, а лишь облегчить процесс приглашения участника. Ваша точка зрения — не приглашать участников с опытом деструктивной деятельности — мне ясна. Давайте посмотрим с другой стороны. Человек должен обязательно просматривать вклад — в этом я с вами абсолютно согласен. Но, в вашем варианте вклад придётся просматривать для всех участников, проходящим по техническим критериям (и если участник не изъявит желание быть АП, этот труд пропадёт зря), а в моём варианте — только тех, кто отреагирует на предложение и подаст заявку на ВП:ЗСАП. Ведь от приглашения подать заявку никакого вреда не будет, даже если оно будет помещено на страницу деструктивного участника. Более того, в вашем случае похоже решение о приглашении/присвоении флага будет проводиться одним человеком, в моём же варианте будет полноценное обсуждение заявки. --D.bratchuk 21:41, 7 февраля 2010 (UTC)
    Мне кажется, что «вред» от приглашения будет. Одно дело, когда про тебя «забыли» или тебя не заметили, другое дело — когда тебя пригласили подать заявку, оценили и отвергли с указанием сделанных тобой ошибок. Наличие этого списка никого ни к чему не обязывает, это лишь вспомогательный инструмент для администраторов. — Claymore 15:27, 8 февраля 2010 (UTC)
    Да, это будет не очень приятно. Мне, например, Партизан предложил подать заявку на ЗАСП, которую благополучно отвергли, и впечатления были не из приятных (хотя возможно, если бы предложил бот, было бы чуть легче). Сгладить потенциальные шероховатости можно, явно указав, что сообщение от бота и ни к чему не обязывает. Но я соглашусь, что сначала лучше опробовать в ручном режиме, путём переговоров, и потом делать выводы о перспективности затеи. --D.bratchuk 20:47, 8 февраля 2010 (UTC)
    Ладно, спорить не будем, это мелочи. Rasim 08:30, 8 февраля 2010 (UTC)
  • Я так понимаю, что никто не возражает против публикации этого списка на странице Википедия:Заявки на статус автопатрулируемого/Кандидаты? — Claymore 15:27, 8 февраля 2010 (UTC)
    Так, может, нам поступить проще? Разобрать этих кандидатов, посмотреть их вклад, и в частном порядке спросить на СО, не возражают ли они против статуса автопатрулируемого? Ведь этот флаг может быть присвоен любым администратором вообще без обсуждения.--Yaroslav Blanter 15:33, 8 февраля 2010 (UTC)
    Да, так и предлагается. Бот обновляет список (скажем, раз в неделю), администраторы просматривают его (или не просматривают, как у кого найдётся время) и предлагают каким-то участникам флаг. Если те согласны, то флаг присваивается. Виктория уже одному участнику предложила, судя по её комментарию. — Claymore 15:46, 8 февраля 2010 (UTC)
    Небольшая ремарка. Наверное нужно сделать так, чтобы один и тот же участник не попадал в список дважды. Кроме того, желательно запускать бота в разное время суток. Rasim 16:07, 8 февраля 2010 (UTC)

Предложение[править код]

Уважаемые ботоводы. Как на ваш взгляд, может имеет смысл реализовать автооткат правок анонимов, в случаях когда эти правки (например) уменьшают размеры статей на >5K (>10K, >15K, …)? Lazyhawk 12:07, 28 января 2010 (UTC)

Ни в коем случае! Я несколько раз наблюдал, как анонимы убрали вандализм. Другое дело - составление списка таких правок для того, чтобы патрулирующие могли наблюдать за такими действиями. --Obersachse 12:12, 28 января 2010 (UTC)

Сортировка интервик в de.wiki[править код]

На meta:Interwiki_sorting_order явно не написано, что в de.wiki сортировка происходит по коду языка, а не по названию языка. Мой бот (pywikipedia) отсортировал cм. diff интервики в de.wiki по коду языка (fi), а не по названию (Suomi) и это вызвало вопросы.

Где нибудь явно прописан порядок сортировки интервик для de.wiki, куда можно отослать человека? — Dnikitin 11:54, 28 января 2010 (UTC)

Займусь этим. --Obersachse 12:01, 28 января 2010 (UTC)
Участник видимо новичок. (http://toolserver.org/~vvv/sulutil.php?user=CRConrad) --Obersachse 12:08, 28 января 2010 (UTC)

Интервики-конфликты 2[править код]

Заготовка шаблона Template:Interwiki-conflict готова, ожидается, что вот-вот начнётся его расстановка в статьях с интервики-конфликтами. На первых порах может быть довольно много и таких статей, и вопросов от редакторов ("кто виноват и что делать"). Я в шаблоне дал в качестве контакта адрес этого форума, так что готовьтесь. :) -- AVBtalk 18:59, 14 января 2010 (UTC)

Может, лучше на ВП:Интервики направить? При чём тут ботоводы? infovarius 19:02, 15 января 2010 (UTC)
Или Википедия:Конфликт межъязыковых ссылок, пусть на СО спрашивают. infovarius 19:03, 15 января 2010 (UTC)

Xqt хочет знать, куда поместить шаблон Interwiki-conflict. Он пока поместил в самый верх страницы, т.к. шаблон невидимый. Он также может передавать допольнительную информацию в виде параметра, например, где появился конфликт. Так в зависимости от параметра можно отсортировать по категориям. Он также может вписать в шаблон те две страницы, которые вызвали конфликт. Вот пример: [10]. Еще спрашивает об описании праки, которое бот должен делать. --Obersachse 14:50, 20 января 2010 (UTC)

  • Моё мнение: Шаблон лучше поставить в самый низ (после интервики) или хотя бы туда, где обычно проставляется шаблон rq. Коментарий к правкам: «Информация об интервики-конфликте». Насчёт параметров я не знаю, что лучше. --Obersachse 15:29, 20 января 2010 (UTC)
    Ага, вниз. А параметрами можно коды языков передавать, которые дублируются в кольце интервик. infovarius 19:16, 20 января 2010 (UTC)
  • Размещать - вниз. Насчёт параметров, очень желательно продумать их схему так, чтобы, во-первых, эта схема сразу была видна и, во-вторых, чтобы в случае, если возникнет необходимость что-то поменять, это не нарушало бы совместимость. Например, можно явно указывать названия параметров, чтобы при необходимости что-то изменить можно было переключиться на новые имена параметров. Что-то типа:
К сожалению, более конкретно про схему я ничего не могу сказать, поскольку мне не известны ни алгоритмы определения конфликтов, ни какого рода связи считаются конфликтными. Я предполагаю только о варианте вроде [ru:A → en:B, en:B → ru:C] (другие варианты, которые я представлял, сводятся к этому).
Ещё один вопрос: если бот находит несколько конфликтов, то, я предполагаю, лучше перечислить их все сразу, соответствующим количеством добавленных шаблонов. -- AVBtalk 23:36, 20 января 2010 (UTC)
Могу лишь сказать, что в лог-файл конфликтов бот пишет такое: [[uk:Царство телестіальне]] {Found more than one link for wikipedia:en} --Obersachse 23:48, 20 января 2010 (UTC)
Схема [ru:A → en:B, en:B → ru:C] в общих чертах правильная. Есть два типа записей в логах: 1) о которой написал Томас, записывается интервики-ботом в файл autonomous_problems.dat; 2) записи в общем логе, если включён параметр -log (их оттуда нужно парсить и может быть немного предварительно "причёсывать"), имеют вид Stopping work on uk:Eva because duplicate pages en:Eva (song) and en:Dark Passion Play are found. "Причёсанные" записи я периодически выкладываю на страничку бота. В этом втором формате, по-моему, удобнее разобраться, в каких именно статьях (а не только языках) следует искать и исправлять проблемы. --Volkov (?!) 22:36, 21 января 2010 (UTC)
Хорошо. Если не будет возражений, то я завтра сообщу разработчику, что мы хотим шаблон внизу, с параметрами в виде {{Interwiki-conflict|where=uk:Eva|first=en:Eva (song)|second=en:Dark Passion Play}} и с описанием правки «Информация об интервики-конфликте». --Obersachse 21:15, 22 января 2010 (UTC)

C 7 января 2010 года бот перестал обновлять лицевую таблицу со ссылками на страницы с обсуждениями номинаций на переименование. --Эль Рэй 01:13, 13 января 2010 (UTC)

Как составить список статей, содержащих определённый параметр в шаблоне?[править код]

Проблема такая: В некоторых статьях есть многократное включение шаблона {{Фамилия}}, например {{Фамилия|Русские}} и {{Фамилия|Польские}}. Их надо объединить в один шаблон, то есть {{Фамилия|Русские|Польские}}.

Составить список всех статей, содержащий шаблон Фамилия — задача тривиальная.

  1. Но как создать список всех статей, где шаблон используется многократно?
  2. Есть ли простой способ создания списка всех статей, которые содержат шаблон с параметром «Русские»? Если это возможно, то тогда можно бы использовать модуль AWB «list comparer» и найти пересечение между списками русских и поляков. Получив такой список можно просту удалить шаблон {{Фамилия|Русские}} и заменить {{Фамилия|Польские}} на {{Фамилия|Русские|Польские}}.

У кого какие идеи? --Obersachse 16:23, 6 января 2010 (UTC)

Я бы поработал с этим rubin16 17:15, 6 января 2010 (UTC)
Super! --Obersachse 17:26, 6 января 2010 (UTC)
  • Если вопрос конкретно об этом шаблоне, то думаю, что статей с несколькими шаблонами - единицы. Когда я его массово расставлял, я их складывал в один шаблон, насколько я помню. infovarius 20:29, 6 января 2010 (UTC)
    Этот шаблон послужил лишь примером. Ссылка на templatetiger мне сильно помогла при решении проблемы составления списков по параметрам шаблонов. --Obersachse 16:47, 7 января 2010 (UTC)

О расстановке шаблонов[править код]

Просматривал статьи о хим веществах, заметил что не во всех статьях стоят шаблоны, хотя само вещество в шаблоне есть и из него вполне в статью переходить. В связи с этим возник вопрос, нельзя ли запустить бота что бы он проверял шаблоны, и во все статьи включенные в шаблон ставил этот шаблон если его там нет. --goga312 08:49, 2 января 2010 (UTC)

Напишите на ВП:РДБ, указав названия таких шаблонов… rubin16 09:21, 2 января 2010 (UTC)