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

问题描述 投票:2回答:1

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

我在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然后返回字符串,我似乎无法将转换和排序设置为正确。或者这可能不是这样做的。

非常感谢您的帮助。

python python-3.x python-requests python-responses
1个回答
0
投票

使用json.dumps()

>>> data = json.loads('{"DA":{"tempTarget":24}}')
>>> data['DA']['tempTarget'] += 1
>>> json.dumps(data)
'{"DA": {"tempTarget": 25}}'
>>> 
© www.soinside.com 2019 - 2024. All rights reserved.