跳转到主要内容

一套用于连接和查询MediaWiki数据库的工具。

项目描述

## MediaWiki数据库

此库提供了一套连接和查询MediaWiki数据库的实用工具。

Schema()对象是 sqlalchemy Engine 的包装,Meta 适配本地数据库设置。当使用 Schema() 成员表 ORM 时,内部映射会在公共副本视图(例如 revision_userindex、logging_userindex 和 logging_logindex)之间透明转换。这允许你编写一个在任一架构上都能按预期运行的查询。

目前,execute() 方法没有进行此类转换,但有一个辅助属性 public_replica,当通过公共副本查询视图时为 True,当查询生产数据库时为 False。

## 示例

>>> 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,)

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

项目详情


下载文件

下载您平台对应的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

mwdb-0.1.2.tar.gz (5.3 kB 查看哈希值)

上传时间 源代码

构建分发

mwdb-0.1.2-py2.py3-none-any.whl (8.0 kB 查看哈希值)

上传时间 Python 2 Python 3

支持