Geckoboard提供this documentation连接到他们的数据集API,您可以在下面看到它的实现。
var API_KEY = 'API_KEY';
var gb = require('geckoboard')(
API_KEY
);
gb.datasets.findOrCreate(
{
id: 'sales.by_day',
fields: {
quantity: {
type: 'number',
name: 'Number of sales'
},
gross: {
type: 'money',
name: 'Gross value of sales',
currency_code: "USD"
},
date: {
type: 'date',
name: 'Date'
}
}
},
function (err, dataset) {
if (err) {
console.error(err);
return;
}
dataset.put(
[
{ date: '2016-01-01', quantity: 819, gross: 2457000 },
{ date: '2016-01-02', quantity: 409, gross: 1227000 },
{ date: '2016-01-03', quantity: 164, gross: 492000 }
],
function (err) {
if (err) {
console.error(err);
return;
}
console.log('Dataset created and data added');
}
);
}
);
我想看看是否有办法通过python发布这些额外的数据(不使用node.js)。这样的事情是可能的,还是我必须使用模式?
[
{ date: '2017-01-01', quantity: 1213, gross: 23423 },
{ date: '2017-01-02', quantity: 111, gross: 1313123 },
{ date: '2017-01-03', quantity: 333, gross: 21314 }
]
答案 0 :(得分:2)
更新:Geckoboard现在拥有自己的官方Python客户端库,用于数据集API https://github.com/geckoboard/geckoboard-python
使用Geckoboard的数据集API完全可以使用Python。您可以使用任何可以使用JSON执行HTTPS请求的语言或平台 - 尽管到目前为止Geckoboard仅为Ruby和Node发布了官方库。
编辑:我在下面做了一个简单的例子,但后来发现了这个:https://github.com/helium/geckoboard-python/
简而言之,您只需要:
PUT
使用schema
对象https://api.geckoboard.com/datasets
来创建数据集PUT
将data
数组添加到https://api.geckoboard.com/datasets/:id
以替换数据集中的所有数据POST
将data
数组添加到https://api.geckoboard.com/datasets/:id
以附加到数据集中的数据DELETE
至https://api.geckoboard.com/datasets/:id
删除数据集这些请求概述于 - https://developer.geckoboard.com/api-reference/curl/
我还没有编写很多Python,所以这可能不是Pythonic,但是你可以用Python创建一个Geckoboard
库来为你做这个,使用{{ 1}}下面的库:
requests