Python中怎么获取OneNet数据
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,Python中怎么获取OneNet数据,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。使用python脚本文件对OneNet服务器数据进行
千家信息网最后更新 2026年11月03日Python中怎么获取OneNet数据
Python中怎么获取OneNet数据,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
使用python脚本文件对OneNet服务器数据进行上传、获取的操作

上传数据
#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2021/2/24 23:01# @Author : LiShan# @Email : lishan_1997@126.com# @File : OneNet_Post.py# @Note : https://blog.csdn.net/lishan132/article/details/114044902import urllib.requestimport json# 设备ID、KeydeviceId = "591972034"APIKey = "ROsfgvwqy2jxn2x93TdDCCbFmL8="# 上传函数def OneNet_post_data(info): url = "https://api.heclouds.com/devices/" + deviceId + '/datapoints' streams = [] for index, element in enumerate(info): streams.append({"id": element[0], "datapoints": [{"value": element[1]}]}) values = {"datastreams": streams} data = json.dumps(values).encode("utf-8") request = urllib.request.Request(url, data) request.add_header('api-key', APIKey) request.get_method = lambda: 'POST' request = urllib.request.urlopen(request) print(json.loads(request.read()))if __name__ == '__main__': upload_data = [ ["road1", 10], ["road2", 20], ["road3", 30], ["road4", 40], ["road5", 50], ["road6", 60], ["road7", 70], ["road8", 80], ["road9", 90], ["road10", 100], ["road11", 110], ["road12", 120], ] OneNet_post_data(upload_data)
获取数据
#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2021/2/24 23:01# @Author : LiShan# @Email : lishan_1997@126.com# @File : OneNet_Get.py# @Note : https://blog.csdn.net/lishan132/article/details/114044902import urllib.requestimport json# 设备ID、KeydeviceId = "591972034"APIKey = "ROsfgvwqy2jxn2x93TdDCCbFmL8="# 获取函数def OneNet_get_data(): url = "http://api.heclouds.com/devices/" + deviceId + "/datastreams" request = urllib.request.Request(url) request.add_header('api-key', APIKey) request.get_method = lambda: 'GET' request = urllib.request.urlopen(request) r = json.loads(request.read()) data = r.pop('data') print(r) return dataif __name__ == '__main__': load_data = OneNet_get_data() print('参数' + '\t\t\t\t\t' + '更新时间' + '\t\t\t\t\t\t' + '数值') for index, element in enumerate(load_data): a = str(element.get('update_at', '')) b = str(element.get('current_value', '')) if a != "" and b != "": print(str(element['id']) + '\t\t\t\t' + a + '\t\t\t' + b)整合为一个文件
#!/usr/bin/env python# -*- coding: utf-8 -*-# pip install prettytableimport urllib.request as reqimport json# 设备ID、KeydeviceId = "591972034"APIKey = "ROsfgvwqy2jxn2x93TdDCCbFmL8="# 上传函数def OneNet_post_data(info): url = "https://api.heclouds.com/devices/" + info[0] + '/datapoints' headers = {'api-key': info[1]} streams = [] for i, e in enumerate(info[2]): streams.append({"id": e[0], "datapoints": [{"value": e[1]}]}) data = json.dumps({"datastreams": streams}).encode("utf-8") request = json.loads((req.urlopen(req.Request(url, data, headers=headers))).read()) print(request)# 获取函数def OneNet_get_data(info): url = "http://api.heclouds.com/devices/" + info[0] + "/datastreams" headers = {'api-key': info[1]} request = json.loads((req.urlopen(req.Request(url, headers=headers))).read()) data = request.pop('data') print(request) return dataif __name__ == '__main__': # 准备待上传数据 upload_data = [ ["road1", 10], ["road2", 20], ["road3", 30], ["road4", 40], ["road5", 50], ["road6", 60], ["road7", 70], ["road8", 80], ["road9", 90], ["road10", 100], ["road11", 110], ["road12", 120], ] # 上传数据 OneNet_post_data([deviceId, APIKey, upload_data]) # 获取数据 get_data = OneNet_get_data([deviceId, APIKey]) # noinspection PyBroadException try: # 使用表格美化显示数据 import prettytable as pt tb = pt.PrettyTable() tb.field_names = ["id", "update_at", "current_value"] for index, element in enumerate(get_data): ID = str(element.get('id', '')) update_at = str(element.get('update_at', '')) current_value = str(element.get('current_value', '')) tb.add_row([ID, update_at, current_value]) print(tb) except Exception: # 直接显示数据 for index, element in enumerate(get_data): ID = str(element.get('id', '')) update_at = str(element.get('update_at', '')) current_value = str(element.get('current_value', '')) print(ID, update_at, current_value)看完上述内容,你们掌握Python中怎么获取OneNet数据的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
数据
utf-8
函数
设备
内容
文件
方法
更多
问题
束手无策
为此
原因
参数
对此
技能
数值
时间
服务器
篇文章
经验
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
华服互联网科技靠谱吗
互联网科技官网
互联网金融 金融科技
喔噻互联网科技
深圳互联网络科技有限公司
电子科技大学互联网
狮子座互联网科技培训
居家互联网科技有限公司
富国互联网科技创新基金
科技赋能互联网健康
移动互联网科技公司
中国科技创新与世界互联网大会
翼展科技 首家互联网医院
世界互联网领先科技成果获奖
图游互联网科技
国产互联网科技公司
容联科技互联网电商
张家口科技产业互联网平台
上海互联网科技园景观
黑龙江互联网科技公司
易互联网科技有限公司
上游互联网科技
广州紫鲸互联网科技
卓越科技互联网 招聘
海南科技产业互联网平台
互联网科技中介
金融科技与互联网金融相同和不同
崇明区互联网教育科技诚信经营
江苏互联网科技小贷
世界互联网科技成果奖