用于话语api的python库
pydiscourse的Python项目详细描述
用于处理话语的python库。
这是原锡版的叉子。它的分叉包括修复, 附加功能,并在pypi上分发包。
目标
- 特殊文档
- 支持所有受支持的python版本
- 为当前支持的 话语的版本(移动的目标)
这里的顺序很重要。话语api本身就没有很好的文档记录,所以 python客户机中的文档级别至关重要。
安装
pip install pydiscourse
示例
创建到话语服务器的客户端连接:
from pydiscourse import DiscourseClient client = DiscourseClient( 'http://example.com', api_username='username', api_key='areallylongstringfromdiscourse')
获取有关用户的信息:
user = client.user('eviltrout') print user user_topics = client.topics_by('johnsmith') print user_topics
创建新用户:
user = client.create_user('The Black Knight', 'blacknight', 'knight@python.org', 'justafleshwound')
实现sso以便与python服务器进行对话:
@login_required def discourse_sso_view(request): payload = request.GET.get('sso') signature = request.GET.get('sig') nonce = sso_validate(payload, signature, SECRET) url = sso_redirect_url(nonce, SECRET, request.user.email, request.user.id, request.user.username) return redirect('http://discuss.example.com' + url)
命令行
为了帮助试验话语api,pydiscussion提供了一个简单的命令行客户机:
export DISCOURSE_API_KEY=your_master_key pydiscoursecli --host-http://yourhost --api-user-system latest_topics pydiscoursecli --host-http://yourhost --api-user-system topics_by johnsmith pydiscoursecli --host-http://yourhost --api-user-system user eviltrout
发布历史记录
0.9.0
- 增加了速率限制支持
- 添加了对用户激活的一些支持
0.8.0
- 添加一些公关指南
- 在核心请求方法中添加对文件的支持
- 添加了许多新的api控件,包括:
- 标签组
- 用户操作
- 上传图像
- 块
- 信任级别锁
- 创建站点定制(主题)
- 创建颜色方案
- 配色方案
- 添加组成员
- 小组成员
- 集团所有者
- 删除组
- 创建组
- 组
- 自定义站点文本
- 删除类别
- 用户电子邮件
- 更新主题状态
- 创建文章
- 更新主题
- 更新虚拟形象
- 全部用户
0.7.0
- 将请求参数放入请求正文中,以进行POST和PUT请求。 允许更大的请求大小,并解决uri太大的错误。
0.6.0
- 添加按用户ID将用户添加到组的方法
0.5.0
- 添加徽章功能
0.4.0
- 添加初始组功能
0.3.2
- SSO功能修复
0.3.1
- 修复如何处理空响应
0.3.0
- 向取消挂起的用户添加了方法
0.2.0
- 初始分叉,包括gberaudo的更改
- 打包清理,放弃对Python2.6的支持,并添加Python3.5、Pypy, PYPY3
- 在pypi上打包
0.1.0.偏差
所有PYPI之前的开发