我正在寻找帮助来创建一个python脚本,将数据推送到geckoboard,特别是以线图的形式。目前我的代码如下所示,是从其他来源收集到一起的,如果有人能合作并帮助我完成这项工作,那就太好了,我不知道如何在折线图上插入我想要的值,如果可以用一些示例值来完成,那就太好了。谢谢
import requests
import json
class Gecko(object):
def __init__(self, api_key):
self.api_key = api_key
def push(self, widget_key, data):
ret = requests.post("https://push.geckoboard.com/v1/send/%s" % widget_key, json.dumps({'api_key' : self.api_key, 'data' : data}), verify=False)
if not (ret.status_code == 200 and ret.json().get('success') == True):
raise ValueError(ret.content)
def line(self, widget_key, values, **kwargs):
data = {'item' : [], 'settings' :kwargs}
for item in values:
data['item'].append(item)
return self.push(widget_key, data)
run=Gecko(****************)
print run.push(150634-85f8db34-af52-4fa3-9963-3200a9a6fe74,some_data?)
print run.line(150634-85f8db34-af52-4fa3-9963-3200a9a6fe74,100,'text')
编辑: 因此,最大的问题似乎是如何形成JSON负载。根据geckoboard API文档,它应该是这样的:
在API调用期间,您基本上组装了一个JSON负载,然后用一个键将其发布到一个地址。widget密钥是geckoboard希望您发布到的唯一地址或URL,api_密钥是您帐户的密钥。您希望程序工作的流程如下所示: 1) 收集你的数据 2) 将数据组合成一个类似JSON的结构(字典和列表嵌套) 3) 转储JSON(这意味着将特定于python的结构转换为JSON结构)。 4) 将此JSON发布到特定服务器。在
以下是您的更新代码:
^{pr2}$很抱歉,我现在无法测试代码是否有效,但我相当有信心它已经完成了95%。如果您正在寻找一种更简单的方法,我构建了一个库来处理JSON的形成以及将数据推送到geckoboard上的自定义小部件。在
您可以查看Geckopush,如果有任何问题请告诉我。它目前在一个有点稳定的版本,我正在积极地工作。在
解决方案:
调用的文件测试.py在
名为test1.py的文件
^{pr2}$相关问题 更多 >
编程相关推荐