Manual:Pywikibot/Создать свой скрипт
На этой странице перечислены некоторые основные советы для начала написания собственного бота. Убедитесь, что вы настроили файл user-config.py
!
Вы можете либо использовать следующие команды в оболочке, либо в скрипте.
Чтобы открыть оболочку, запустите python pwb.py shell
;
В качестве скрипта сохраните файл как «myscript.py
» в каталоге scripts/userscripts/
; затем выполните python pwb.py myscript
.
Чтобы получить доступ к фреймворку Pywikibot из вашего скрипта на Python, используйте:
import pywikibot
- для извлечения страницы используйте следующую команду, где pageName - это название страницы, которую вы хотите получить (например: Википедия:Боты или Индия):
site = pywikibot.Site()
page = pywikibot.Page(site, "pageName")
text = page.text
- для обновления страницы используйте:
page.text = "newText"
page.save("Edit comment")
- посмотрите на некоторые файлы pywikibot для других идей --
scripts/basic.py
относительно легко читать, даже если вы новичок в pywikibot. - вы можете найти все доступные методы страницы в файле
pywikibot/page.py
. basic.py
дает вам настройку, которая может использоваться для разных ботов, все, что вам нужно сделать, это определить редактирование строки в тексте страницы.- Чтобы выполнить итерацию по набору страниц, см. pywikibot/pagegenerators.py (см. также старую документацию) для некоторых объектов, которые возвращают набор страниц. Пример использования CategoryPageGenerator, который делает что-то для каждой страницы в категории: Категория:Living people
import pywikibot
from pywikibot import pagegenerators
site = pywikibot.Site()
cat = pywikibot.Category(site,'Category:Living people')
gen = pagegenerators.CategorizedPageGenerator(cat)
for page in gen:
#Do something with the page object, for example:
text = page.text
См. также
- Pywikibot full documentation on doc.wikimedia.org
- wikigraphviz - example of using Pywikibot with https://graphviz.org/
- How to write a basic script via Pywikibot - a small wiki toolkits workshop
- Manual:Pywikibot/Cookbook
- If you need more help on setting up your Pywikibot visit the #pywikibot IRC channel подключиться or pywikibot@ mailing list.