python-pywikibot
Port variant v11
Summary Python MediaWiki Bot Framework (3.11)
BROKEN
Package version 9.5.0
Homepage https://www.mediawiki.org/wiki/Manual:Pywikibot
Keywords python
Maintainer Python Automaton
License Not yet specified
Other variants v12
Ravenports Buildsheet | History
Ravensource Port Directory | History
Last modified 09 NOV 2024, 17:03:26 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)
PY311 ON Build using Python 3.11 PY312 OFF Build using Python 3.12
Package Dependencies by Type
Build (only) python-pip:single:v11
autoselect-python:single:std
Build and Runtime python311:single:std
Runtime (only) python-mwparserfromhell:single:v11
python-packaging:single:v11
python-requests:single:v11
Download groups
main mirror://PYPIWHL/29/43/2b8c910683a7e08591d16ac15f3470a7c6316272234223d99f0a2a109605
Distribution File Information
4f2e3d8c00bf6410418dc78489a13d139354c832df312f78a693a27d0fffa53f 726064 pywikibot-9.5.0-py3-none-any.whl
Ports that require python-pywikibot:v11
No other ports depend on this one.