没有项目描述

togglwrapper的Python项目详细描述


python库可以方便地与toggl的api接口。

实现toggl的所有主api。尚未支持reports api(即将推出)。

在Python2.7+和Python3+中工作,并使用requests

TOGGL

Toggl是自由时间跟踪软件。

功能

  • 为您处理身份验证:只需提供一次api令牌
  • 最完整的python包装器:实现所有v8 api。
  • 从pypi方便地安装
  • 易于向自定义URL发出请求
  • python2和python3兼容

安装

$ pip install togglwrapper

快速启动

>>>fromtogglwrapperimportToggl>>>toggl=Toggl('your_api_token')``>>>toggl.User.get(){u'data':{u'achievements_enabled':True,u'api_token':u'your_api_token',u'email':u'your_email@domain.com',u'fullname':u'Your Name',...}>>>toggl.Clients.get()[{u'at':u'2015-07-02T14:27:59+00:00',u'id':12031893,u'name':u'Client Name',u'wid':3928}]>>>toggl.Workspaces.get()[{u'admin':True,u'api_token':u'your_api_token',u'id':1234,u'name':u"Your workspace",...}]>>>toggl.Clients.create({"client":{"name":"Very Big Company","wid":1234}}){u'data':{u'id':294021,u'name':u'Very Big Company',u'wid':1234}}

自定义请求

假设为一个新的toggl对象释放了一个新的端点:addresses。这个假设的端点位于https://www.toggl.com/api/v8/addresses。我们可以获取所有地址,通过id获取特定地址,或者通过post创建新地址。

我们可以在toggl客户机上使用这些方法,因此不必等待支持新端点的togglwrapper的新版本:

>>>fromtogglwrapperimportToggl>>>toggl=Toggl('your_api_token')>>>toggl.get('/addresses')...>>>toggl.get('/addresses/{address_id}')...>>>toggl.post('/addresses',data={"address":{"name":"Billing Address 1","address":"123 Main St."}})...

toggl.puttoggl.delete也可用。

文档

在这里找到完整的文档:http://togglwrapper.readthedocs.org/en/latest/

API端点文档

有关哪些字段是必需的,哪些端点是可用的,请参见Toggl API docs

在本地运行测试

使用virtualenv+virtualenvwrapper保持环境隔离:

  1. 创建一个测试虚拟机
  2. 安装测试要求
  3. python tests.py

命令行输出示例:

$ mkvirtualenv twtests  # if creating the virtualenv for the first time
Running virtualenv [...]
[...]
(twtest) $ pip install -r test-requirements.txt
Collecting [...]
[...]
(twtest) $ python tests.py
.......................................................
----------------------------------------------------------------------
Ran 55 tests in 0.414s

OK
(twtest) $ deactivate
$

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

推荐PyPI第三方库


热门话题
异常Java NoSuchAlgorithmException SunJSSE,sun。安全ssl。SSLContextImpl$DefaultSSLContext   swing在Java中添加KeyListener   生成带签名的APK时发生java错误   java无法提取响应:未找到合适的HttpMessageConverter   Android Java RecyclerView错误:未连接适配器;跳过布局   java正交摄像头和sprite显示问题   java在一个项目中获取所有注释?   使用Jetty的java应用程序在内存和线程突然爆发时出错   如何在Java中初始化图形?   使用Struts和Java的Twitter授权网站上的空白页面   来自Android的java Pascal请求   使用MyBatis、H2和Oracle程序进行java集成测试   java My代码仅从数据库的第一个字段检索数据。请查看详细信息   java简单while循环练习   java将@Transactional添加到测试中,以避免组织。冬眠LazyInitializationException无会话错误。为什么需要它?   java如何授权Spring应用程序的服务层?   bluej Java。lang.NumberFormatException。forInputString(NumberFormatException.java:65)   java分离循环每次迭代的结果