Python请求以递增方式获取和放置数据

时间:2018-02-28 23:28:56

标签: python python-3.x python-requests python-responses

第一次发帖,长时间读者。我对编码非常陌生,只是想用网络教自己。

我在python中有一些代码遇到麻烦并且会喜欢一些帮助。我有2个python脚本,基本上从我的AC单元读取数据,第二个向其发送数据。

以下是获取数据的代码...(结果只是一长行文本,因此格式化数据可以提取特定信息)

#!/usr/bin/python

import requests
import json

link = "https://actron.ninja.is/rest/v0/device/ACONNECT001EC015ABFE_0_2_4?<user_access_token>"
f = requests.get(link)

raw_data = f.text

formatted_data = json.loads(raw_data)

amOn = formatted_data['data']['last_data']['DA']['amOn']
tempTarget = formatted_data['data']['last_data']['DA']['tempTarget']

print (tempTarget)

以及发送数据的代码......

#!/usr/bin/python

import requests

headers = {
    'Origin': 'https://actronair.com.au',
    'Accept-Encoding': 'gzip, deflate, br',
    'Content-Type': 'application/json',
    'Accept': 'application/json',
    'Referer': 'https://actronair.com.au/aconnect/',
    'Connection': 'keep-alive',
}

params = (
    ('user_access_token', '<user access token>'),
)

data = '{"DA":{"tempTarget":24}}'

response = requests.put('https://actron.ninja.is/rest/v0/device/ACONNECT001EC015ABFE_0_2_4', headers=headers, params=params, data=data)

我的问题和我的目标是什么,我想将它合并到一个python文件中,并且基本上让程序读取当前的'tempTarget',然后将其增加1,此脚本将最终附加到按钮。

我正在努力解决这个问题,因为发送的数据是一个字符串,所以我需要将它转换为dict并将其转换为+1收到的tempTarget然后返回字符串,我似乎无法获得转换和顺序正确。或者这可能不是这样做的。

非常感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

使用json.dumps()

>>> data = json.loads('{"DA":{"tempTarget":24}}')
>>> data['DA']['tempTarget'] += 1
>>> json.dumps(data)
'{"DA": {"tempTarget": 25}}'
>>>