跳转到主要内容

Nike+的锻炼数据检索API。

项目描述

NikePlus API

作为一名Nike+用户和软件工程师,我认为能够获取我的跑步原始数据会很有趣。这款小巧的软件可以使你以XML(如Nike提供)或JSON格式获取这些数据。

你只需要你的UserID,你可以通过以下步骤获取

  1. 登录到 NikePlus

  2. 点击 我的跑步

  3. 点击右上角的 分享 按钮。

  4. 点击 添加到网页

  5. 点击 获取代码

代码现在已复制到你的剪贴板。在代码中,你可以找到你的UserID。

如何使用

以下测试是使用我的UserID的实时测试。它们将确保代码能够针对Nike+ API进行实时工作。

>>> import sw.nikeplus
>>> user_id = 279218513

以XML格式检索数据

>>> print sw.nikeplus.get_xml(user_id)
<?xml...<status>success...<run id="1889752785" workoutType="standard"><startTime>2006-10-31T16:50:07+01:00...

Nike+的响应被缓存。如果由于任何原因,服务在下次尝试时出现故障,将返回旧的响应。你可以通过提供可选参数force强制刷新。

以JSON格式检索数据

>>> print sw.nikeplus.get_json(user_id)
{'status': 'success',...'startTime': '2006-10-31T16:50:07+01:00', 'duration': '1752873', 'id': '1889752785', 'workoutType': 'standard'...

Nike+的响应也在这里被缓存。如果你喜欢,也可以提供可选参数force,以禁用缓存。

辅助函数

有一个名为xml2json的辅助函数。它应该适用于任何XML,而不仅仅是Nike+的XML。它在包内部进行了测试,但如果你需要,也可以从其他包中使用它。

>>> import sw.nikeplus.utils
>>> print sw.nikeplus.utils.xml2json(
...     """<?xml version="1.0" encoding="UTF-8"?>
...        <note id="1234">
...          <to>Tove</to>
...          <from>Jani</from>
...          <heading>Reminder</heading>
...          <body>Don't forget me this weekend!</body>
...        </note>""")
{'body': "Don't forget me this weekend!", 'to': 'Tove', 'from': 'Jani', 'heading': 'Reminder', 'id': '1234'}

变更日志

0.1 (2012-04-04)

  • 初始发布

项目详情


下载文件

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

源分布

sw.nikeplus-0.1.tar.gz (7.0 kB 查看哈希值)

上传时间

支持