Manual:Pywikibot/Create your own script

From MediaWiki.org
Jump to: navigation, search
This page contains changes which are not marked for translation.

This page lists some very basic tips for getting started writing your own bot. Make sure you've set up your user-config.py file!

You can either use the following commands in a shell, or in a script.

To open a shell, run python pwb.py shell;

As a script, please save the file as 'myscript.py' in the 'scripts/' directory; then run python pwb.py myscript.

  • To gain access to the pywikipedia framework, use:
import pywikibot
  • to retrieve a page, use the following, where pageName is the title of the page you would like to retrieve, e.g., "Wikipedia:Bots" or "India":
site = pywikibot.Site()
page = pywikibot.Page(site, u"pageName")
text = page.text
  • to update a page, use:
page.text = u"newText"
page.save(u"Edit comment")
  • look at some of the pywikibot files for other ideas -- scripts/basic.py is relatively easy to read even if you're new to pywikibot.
  • you can find all available Page methods in the pywikibot/page.py file.
  • basic.py gives you a setup that can be used for many different bots, all you have to do is define the string editing on the page text.
  • To iterate over a set of pages, see pywikibot/pagegenerators.py for some objects that return a set of pages. An example use of the CategoryPageGenerator that does something for each page in the Category:Living people category:
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

See also[edit]