24个版本
0.7.0-rc.1 | 2024年6月2日 |
---|---|
0.6.0 | 2023年12月15日 |
0.5.0 | 2023年4月3日 |
0.5.0-alpha.3 | 2023年2月20日 |
0.2.2 | 2021年6月22日 |
#892 in Web编程
每月420次下载
用于 2 包
61KB
1K SLoC
mwapi
MediaWiki API客户端库。
mwapi
是 MediaWiki Action API 的低级库。如果您打算编辑页面或需要一个更高级的接口,建议使用建立在 mwbot
之上的库,它基于此包。
目标
- 通用,适用于任何应用程序,无论是交互式使用还是编写机器人
- 完全兼容并发用例
- 将 MediaWiki 错误转换为 Rust 错误
- 日志记录(使用
tracing
包)以查看错误 - 遵循所有 最佳实践
快速入门
let client = mwapi::Client::builder("https://en.wikipedia.org/w/api.php")
.set_user_agent("mwapi demo")
// Provide credentials for login:
// .set_botpassword("username", "password")
.build().await?;
let resp = client.get_value(&[
("action", "query"),
("prop", "info"),
("titles", "Taylor Swift"),
]).await?;
let info = resp["query"]["pages"][0].clone();
assert_eq!(info["ns"].as_u64().unwrap(), 0);
assert_eq!(info["title"].as_str().unwrap(), "Taylor Swift");
功能
- 身份验证,使用 OAuth2(推荐)或BotPasswords
- 错误处理,将 MediaWiki 错误转换为 Rust 错误
- CSRF token 处理,使用
post_with_token
- 速率限制和并发控制
- 文件上传(需要
upload
功能)
另请参阅
mwbot
提供与 MediaWiki 交互的高级接口mwapi_responses
是一个宏,用于生成动态 API 查询的严格类型
贡献
mwapi
是 mwbot-rs
项目 的一部分。我们一直在寻找新的贡献者,如果您感兴趣,请 联系 我们!
许可证
此包在 GPL-3.0-or-later 许可下发布。有关详细信息,请参阅 COPYING。
依赖项
~6–21MB
~269K SLoC