python-pywikibot
Port variant v12
Summary Python MediaWiki Bot Framework (3.12)
BROKEN
Package version 9.6.0
Homepage https://www.mediawiki.org/wiki/Manual:Pywikibot
Keywords python
Maintainer Python Automaton
License Not yet specified
Other variants v13
Ravenports Buildsheet | History
Ravensource Port Directory | History
Last modified 06 DEC 2024, 22:49:18 UTC
Port created 05 MAR 2024, 06:30:48 UTC
Subpackage Descriptions
single ********* Pywikibot ********* The Pywikibot framework is a Python library that interfaces with the [MediaWiki API] version 1.27 or higher. Also included are various general function scripts that can be adapted for different tasks. For further information about the library excluding scripts see the full [code documentation]. Quick start =========== .. code:: text git clone https://gerrit.wikimedia.org/r/pywikibot/core.git cd core git submodule update --init pip install -r requirements.txt python pwb.py Or to install using PyPI (excluding scripts) .. code:: text pip install pywikibot pwb Our [installation guide] has more details for advanced usage. Basic Usage =========== If you wish to write your own script it's very easy to get started: .. code:: python import pywikibot site = pywikibot.Site('en', 'wikipedia') # The site we want to run our bot on page = pywikibot.Page(site, 'Wikipedia:Sandbox') page.text = page.text.replace('foo', 'bar') page.save('Replacing "foo" with "bar"') # Saves the page Wikibase Usage ============== Wikibase is a flexible knowledge base software that drives Wikidata. A sample pywikibot script for getting data from Wikibase: .. code:: python import pywikibot site = pywikibot.Site('wikipedia:en') repo = site.data_repository() # the Wikibase repository for given site page = repo.page_from_repository('Q91') # create a local page for the given item item = pywikibot.ItemPage(repo, 'Q91') # a repository item data = item.get() # get all item data from repository for this item Script example ============== Pywikibot provides bot classes to develop your own script easily: .. code:: python import pywikibot from pywikibot import pagegenerators from pywikibot.bot import ExistingPageBot class MyBot(ExistingPageBot): update_options = { 'text': 'This is a test text', 'summary': 'Bot: a bot test edit with Pywikibot.' } def treat_page(self): """Load the given page, do some changes, and save it.""" text = self.current_page.text text += '\n' + self.opt.text self.put_current(text, summary=self.opt.summary) def main(): """Parse command line arguments and invoke bot.""" options = {} gen_factory = pagegenerators.GeneratorFactory() # Option parsing local_args = pywikibot.handle_args(args) # global options local_args = gen_factory.handle_args(local_args) # generators options for arg in local_args:
Configuration Switches (platform-specific settings discarded)
PY312 ON Build using Python 3.12 PY313 OFF Build using Python 3.13
Package Dependencies by Type
Build (only) python312:dev:std
python-pip:single:v12
autoselect-python:single:std
Build and Runtime python312:primary:std
Runtime (only) python-mwparserfromhell:single:v12
python-packaging:single:v12
python-requests:single:v12
Download groups
main mirror://PYPIWHL/66/d1/18de028868cf58d7226d5597448ef9ff7e88dfd4cad6dfc3eeee3aa46d0a
Distribution File Information
05d30ca20613a3f04259109134dbe73bfe9054291d2953003e6b08d00cba88a0 726580 python-src/pywikibot-9.6.0-py3-none-any.whl
Ports that require python-pywikibot:v12
No other ports depend on this one.