2017-10-06 6 views
-3

私は基本的なpythonセンサーを持っていて、温度と圧力を読み込んで変数に保存しました。この変数をjson形式のpythonリクエスト本体のパラメータとして使用したいと思います。それは可能ですか? エラーが発生し、strエラーから2倍に変換するエラーが発生します。Pythonを使ってjson putリクエストに変数を含める

import requests 

url = "https://10.109.143.88:8443/sendsensorvalue/" 

payload = "{\n\t\t\"pantherId\":2741025,\n\t\t\"values\":[\n\t\t{\n\t\t\t\"variableName\":\"Temperature\",\n\t\t\t\"timeStamp\":1507268051,\n\t\t\t\"value\":33\n\t\t},\n\t\t{\n\t\t\t\"variableName\":\"Pressure\",\n\t\t\t\"timeStamp\":1507268051,\n\t\t\t\"value\":33\n\t\t}\n\t\t\t\n\t\t\t]\n}" 
headers = { 
    'content-type': "application/json", 
    'cache-control': "no-cache", 
    'postman-token': "6dde2794-7133-5666-560a-c09e4761ed35" 
    } 

response = requests.request("PUT", url, data=payload, headers=headers) 

print(response.text) 

これは、温度データと圧力データの定義済み値33で正常に動作します。

私はJSON値(33値)にrawTempに値を代入し、それをサーバーに送信できるようにしたいセンサデータを取得し、変数

import requests 
import Adafruit_BMP.BMP085 as BMP085 
sensor=BMP085.BMP085() 

rawTemp=sensor.read_temperature() 
rawPressure=sensor.read_pressure() 

でそれを保存するために実行している、この同じコードを持っています。

+0

コードとトレースバックまたはその他のエラーメッセージを送信してください。 – mhawke

+0

元のコードを表示するように編集された投稿 –

答えて

0

回答が見つかりました。

複数の文字列にペイロードを分割し、変数からの入力を文字列に変換しながら追加することができます。

payload = "{\n\t\t\"pantherId\":2741025,\n\t\t\"values\":[\n\t\t{\n\t\t\t\"variableName\":\"Temperature\",\n\t\t\t\"timeStamp\":1507268051,\n\t\t\t\"value\":"+str(variableName1)+"\n\t\t},\n\t\t{\n\t\t\t\"variableName\":\"Pressure\",\n\t\t\t\"timeStamp\":1507268051,\n\t\t\t\"value\":"+str(variableName2)+"\n\t\t}\n\t\t\t\n\t\t\t]\n}" 
関連する問題