python-wikibase provides an object-oriented abstraction of the Wikibase API.
The library simplifies the authentication process and can be used to query and edit information on Wikidata or any other Wikibase instance.
pip install python-wikibaseSimple example for adding a coordinate location claim to an existing Wikibase item:
from python_wikibase import PyWikibase
# Authenticate with Wikibase
py_wb = PyWikibase(config_path="config.json")
# Fetch item and "coordinate location" property
item = py_wb.Item().get(entity_id="item label")
prop = py_wb.Property().get(entity_id="coordinate location")
# Create new GeoLocation value
value = py_wb.GeoLocation().create(1.23, 4.56)
# Create GeoLocation claim
claim = item.claims.add(prop, value)See the documentation for descriptions and examples of all commands.
The PyWikibase class takes the same authentication and configuration parameters as the WikibaseApi class from the wikibase-api library (which is used internally). See its documentation for a guide on how to authenticate with Wikibase.
See this guide on how to set up a development environment for this package.
If you'd like to test this package with a local instance of Wikibase, see this guide on how to set up a development instance with wikibase-docker.
- Implement
Sitelinkclass - Implement missing data types (see
data_type.py)
Suggestions and contributions are always welcome! Please first discuss changes via issue before submitting a pull request.