Skip to main content

# MediaWiki database

This library provides a set of utilities for connecting to and querying a MediaWiki database.

The Schema() object is a thin wrapper around a sqlalchemy Engine and Meta adapts to the local database setup. When using Schema() member table ORM, the internal mapping will translate between public replicas views (e.g. revision_userindex, logging_userindex and logging_logindex) transparently. This allows you to write one query that will run as expected on either schema.

At the moment, the execute() method does not make any such conversion, but a helper attribute public_replica that is True when querying a views via public replica and False when querying the production database.

## Example

>>> import mwdb
>>> enwiki = mwdb.Schema("mysql+pymysql://enwiki.labsdb/enwiki_p" +
...                      "?read_default_file=~/replica.my.cnf")
>>> enwiki.public_replica
True
>>>
>>> with enwiki.transaction() as session:
...     print(session.query(enwiki.revision_userindex)
...           .filter_by(rev_user_text="EpochFail")
...           .count())
...
4302
>>> result = enwiki.execute("SELECT COUNT(*) FROM revision_userindex " +
...                         "WHERE rev_user=:user_id",
...                         {'user_id': 6396742})
>>>
>>> print(result.fetchone())
(4302,)

## Authors * Aaron Halfaker – https://github.com/halfak

Release files for mwdb 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mwdb 0.1.2
File Size Uploaded
mwdb-0.1.2.tar.gz 5.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mwdb 0.1.2
File Interpreter ABI Platform
mwdb-0.1.2-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 13.3 kB

Release files / mwdb-0.1.2.tar.gz

Download URL mwdb-0.1.2.tar.gz
Size 5.3 kB
Tags Source
SHA-256 checksum
How to use checksums
a38082c84b33a88df22385362fed65ae31613dd0d5f7dc57ed76583b7fcdc04b
BLAKE2b-256 checksum
How to use checksums
b10b8ecf93fedff241ae3200bcfdb1ef8de2f00f23d01c51b728bb450f6e0a43
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / mwdb-0.1.2-py2.py3-none-any.whl

Download URL mwdb-0.1.2-py2.py3-none-any.whl
Size 8.0 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
14e5d2add1a9e0fe8759e70164147b7df80d02153a11eec3f7181989079d420e
BLAKE2b-256 checksum
How to use checksums
abef840d6172bec7074147264b6fa1fe9ac3e42c403bb72b61ad7fb8d704426e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page