EarwigBot робот Питона, который редактирует Википедию и взаимодействует с людьми более 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 (или в документации / реж).
Обратите внимание, что пользовательские команды будут переопределить встроенные команды и задачи с тем же именем.
Бот и BotConfig
earwigbot.bot.Bot является основным классом EarwigBot в. Вы не должны экземпляр это самостоятельно, но это хорошо, чтобы быть знакомы с его атрибутами и методами, потому что это главный способ общения с другими частями бота. Объект бот доступны в качестве атрибута команд и задач (например, 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 плагин для более сложной один.
Вики Toolset
Ответ EarwigBot на рамках Pywikipedia является Вики 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
Комментарии не найдены