EarwigBot є робот Python, що редагує Вікіпедію і взаємодіє з людьми більш IRC та NBSP ;. Цей файл містить загальний огляд того, як встановити та налаштувати бота; Більш детальна інформація знаходиться в документації / каталогу (доступно в Інтернеті за адресою PyPI).
Історія
Почав розробку на основі бази Pywikipedia, на початку 2009 року згоду на його кулак завдання, детектор порушенні авторських прав, було проведено в травні, а бот вже працює постійно з тих пір (за винятком січні / лютому 2011 року). В даний час обробляє кілька поточних завдань, починаючи від покоління статистики до категорії очищення і завдання на вимогу, такі як WikiProject шаблону тегів. Так він почав працювати, бот склав понад 50000 правок.
Проект переписати його з нуля почалося на початку квітня 2011 року, таким чином, віддаляючись від бази Pywikipedia і дозволяє меншим загальним кодом, кращої інтеграції між бот частин, і легшого обслуговування.
Установка
Цей пакет містить основну earwigbot, реферувати досить того, що він повинен бути зручним і настроюється, хто працює бот на MediaWiki сайті. Оскільки це компонент на основі компоненти IRC може бути відключений, якщо це необхідно. Команди IRC і бот завдання, характерні для мого екземпляра EarwigBot, що я не відчуваю середній користувач потребуватиме доступні з репозиторію earwigbot-плагінів.
Рекомендується, щоб запустити юніт-тести бота перед установкою. Запустіть тест setup.py пітона з кореневого каталогу проекту. Зверніть увагу, що деякі тести вимагають підключення до Інтернету, і інші можуть зайняти деякий час, щоб бігти. Покриття на даний момент вельми неповним.
Налаштування
Бот зберігає свої дані в "робочий каталог", у тому числі його конфігураційний файл і баз даних. Це також місце, де ви будете розміщувати команди користувацького IRC і бот завдання, які будуть пояснені пізніше. Це не має значення, де цей каталог, так довго, як бот може написати до нього.
Почніть бота з earwigbot шлях / до / робітник / реж, або просто earwigbot якщо робочий каталог поточного каталогу. Це буде зауважити, що ніякого config.yml файл не існує, і проведе вас через процес установки.
Там в даний час немає способів змінити файл config.yml зсередини бота після того, як був створений, але YAML є дуже простий формат, так що ви повинні бути в змозі зробити всі необхідні зміни самостійно. Перевірте пояснення YAML у Вікіпедії за допомогою.
Після установки, бот почне. Це означає, що буде підключатися до IRC-серверів він був налаштований для, розклад бот завдань для запуску в певний час, а потім чекати розпоряджень (як команди на IRC). Для отримання списку команд, скажімо, «Допоможіть!» (Команди повідомлення з префіксом знак оклику).
Ви можете зупинити бота в будь-який час з Ctrl + C, такий же, як ви зупинити нормальну програму Python, і він буде намагатися вийти безпечно. Ви також можете використовувати команду "Вихід!» На IRC.
Налаштування
Робочий каталог бота містить підкаталог команди і підкаталог завдань. Команди користувальницького IRC можуть бути поміщені в колишній, в той час як користувальницькі завдання вікі бот перейти до останньої. Розробка користувальницьких модулів пояснюється нижче, і більш докладно через документації бота на PyPI (або в документації / реж).
Зверніть увагу, що користувацькі команди будуть перевизначити вбудовані команди і завдання з тим же ім'ям.
Bot та BotConfig
earwigbot.bot.Bot є основним класом EarwigBot-х років. Ви не повинні самостійно створити це самостійно, але це добре, щоб бути знайомі з його атрибутами і методами, тому що це головний спосіб спілкування з іншими частинами бота. Об'єкт Bot доступний в якості атрибута команд і завдань (наприклад, self.bot).
earwigbot.config.BotConfig інформація про конфігурацію Магазини для бота. Його рядок документації пояснює, що кожен атрибут використовується для, але, по суті кожен "вузол" (один з config.components, вики, IRC, команд, завдань і метадані) відображає в розділі файлу config.yml бота. Наприклад, якщо config.yml включає в себе щось на кшталт:
IRC:
І NBSP; інтерфейс:
І NBSP; Нік: MyAwesomeBot
і NBSP; канали:
І NBSP; - "## earwigbot"
І NBSP; - "# канал"
І NBSP; - "# другой-канал"
... Тоді config.irc ["інтерфейс"] ["нік"] буде "MyAwesomeBot" і config.irc ["Frontend"] ["канали"] буде ["## earwigbot", "# канал", "# другой-канал"].
Команди користувальницького IRC
Користувальницькі команди підкласи earwigbot.commands.Command, які переписують процес командування () (і, можливо, перевірка () або настройки) () методи.
Бот має широкий вибір вбудованих команд і плагінів виступати в якості зразка коду та / або дати ідеї. Почніть з тіста, а потім перевірити chanops і afc_status для деяких більш складних сценаріїв.
Користувальницькі бот завдання
Користувальницькі завдання є підкласами earwigbot.tasks.Task, які переписують пробіг завдань (в) (і, можливо, настройки) () методи.
См вбудований wikiproject_tagger задачу відносно простим завданням, або afc_statistics плагін для більш складною.
Wiki Toolset
Відповідь EarwigBot за Рамковою Pywikipedia є Wiki Toolset (earwigbot.wiki), який ви будете в основному доступ через bot.wiki.
bot.wiki надає три методи для управління сайтів - get_site (), add_site () і remove_site (). Сайти об'єкти, які просто представляють собою MediaWiki сайт. Один примірник EarwigBot (тобто одного робочого каталогу), як очікується, відносяться до однієї території або групи сайтів, що використовують один і той же пароль користувача (як і всі вікі WMF з CentralAuth).
Завантажте ваш сайт за замовчуванням (той, який ви обрали під час установки) з сайту = bot.wiki.get_site ().
Не всі аспекти інструментарію покриті в документації. Досліджуйте свій код і рядки документації, щоб дізнатися, як використовувати його в більш практичний моди. Для довідки, bot.wiki є екземпляром earwigbot.wiki.SitesDB прив'язані до файлу sites.db в робочому каталозі бота
Вимоги :.
- Python
Коментар не знайдено