UberSmith API 2.0的客户端库

ubersmith的Python项目详细描述


https://img.shields.io/travis/jasonkeene/python-ubersmith.svg?style=flathttps://img.shields.io/coveralls/jasonkeene/python-ubersmith.svg?style=flathttps://img.shields.io/pypi/v/ubersmith.svg?style=flat

安装

pip install ubersmith

示例使用

首先,您需要使用登录凭据初始化ubersmith包:

import ubersmith
ubersmith.init('http://ubersmith/api/2.0/', 'username', 'password')

然后您可以进行api调用:

from ubersmith import uber, client
uber.method_list()
client.get(email='g.freeman@combineresearch.com')

这些模块与Ubersmith API 2.0 docs中描述的方法相匹配。

无模块状态

init使用您的登录凭据创建并存储请求处理程序。 如果出于某种原因,您希望不具有此模块状态,则可以 手动实例化请求处理程序:

from ubersmith.api import RequestHandler
h = RequestHandler('http://ubersmith/api/2.0/', 'username', 'password')

然后显式地将其传递给任何调用函数:

from ubersmith import uber, client
uber.method_list.handler(h)()
client.get.handler(h)(email='g.freeman@combineresearch.com')

或者可以直接在处理程序和处理程序上访问调用函数 将隐式地传递到调用函数中:

h.uber.method_list()
h.client.get(email='g.freeman@combineresearch.com')

原始加工

或者,您可以直接在处理程序上处理请求:

h.process_request('uber.method_list')
h.process_request('client.get', data={'email': 'g.freeman@combineresearch.com'})

尽管这将绕过任何验证逻辑和提供的响应清理 通过调用函数返回ubersmith的baseresponse。

开发

您需要安装开发依赖项:

pip install -r requirements-dev.txt

运行测试

运行测试:

py.test

在多个口译员上运行测试:

tox

运行测试并生成覆盖率报告:

bin/coverage.sh

控制台

要在示例配置文件上运行dev控制台副本:

cp bin/config.py.example bin/config.py

使用凭据编辑它,然后运行控制台:

python -i bin/console.py

从这里您可以对您的dev实例运行命令:

>>> uber.method_list()

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
tomcat java。lang.NoClassDefFoundError:无法初始化类com。太阳代理$Proxy8   java Spring引导CommandLineRunner异常处理建议   java文件。getParentFile()。mkdirs();在osx中创建重复文件夹   java Lucene IndexWriter线程安全   HashMapJava加速了哈希映射的创建   java执行器服务从Servlet线程启动   guava在Java中创建异构列表   泛型Java将比较器传递给构造函数   在Java中生成公钥和私钥的加密会生成类似的所有密钥,包括私钥和公钥   java ResourceLocation抛出FileNotFoundException Minecraft Forge 1.12.2   java使用动态键序列化JSON响应   在空映射上调用方法时发生java NullPointerException   java在Selenium中选择不同行中的按钮   优化在Java中,降低时间和空间复杂性的最佳方法是什么?   java表。setValueAt(…)不为JTable工作   javajsonrpc与JSON   ant从java编译中排除类的特定方法