Python使用delimi正确格式化httppost

2024-06-09 05:10:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个python脚本,它接受bash命令“ibeacon\u scan”的输出。运行脚本时出现此错误。你知道吗

Traceback (most recent call last):
   file "./stdin.py", line 12, in <module>
      conn.request("POST", "post.php", params, headers)
NameError: name 'params is not defined

下面是python的代码

#!/usr/bin/python

import fileinput
import httplib
import urllib

for line in fileinput.input():

   parmas = urllib.urlencode({"UUID": {"Major":{"Minor":"RSSI"}}})
   headers = {"Content-type": "application/x-www-form-urlencoded","Accept": "text/plain"}
   conn = httplib.HTTPConnection("67.205.14.22")
   conn.request("POST", "post.php", params, headers)
   response = conn.getresponse()
   print response.status, response.reason
   data = response.read()
   print data
   conn.close()

“ibeacon\u san”命令的输出为:

ibeacon scan...
3F234454-CFD-4A0FF-ADF2-F4911BA9FFA6 1 4 -71 -69
3F234454-CFD-4A0FF-ADF2-F4911BA9FFA6 6 2 -71 -63
3F234454-CFD-4A0FF-ADF2-F4911BA9FFA6 1 4 -71 -69
3F234454-CFD-4A0FF-ADF2-F4911BA9FFA6 5 7 -71 -64

我的问题是,如何更改脚本并发送查询字符串,例如:

http://67.205.14.22/post.php/ProcessRawData?data={"UUID":"3F234454-CFD-4A0FF-ADF2-F4911BA9FFA6","timestamp":"2010-04-12 10:54:24","Major": "1","Minor": "4","RSSI":"-69"}

我不知道如何将fileinput格式化为查询字符串。我的格式看起来正确吗?分隔符是进入python脚本的数据的空间。我在树莓皮上用树莓。你知道吗


Tags: import命令脚本dataresponseparamsconnpost
1条回答
网友
1楼 · 发布于 2024-06-09 05:10:05

在定义params的行中有一个输入错误—称之为parmas。你知道吗

一般来说,如果您阅读错误消息,它是非常有用的。这清楚地告诉您没有定义一个名为params的变量,所以请检查代码的这一部分!你知道吗

相关问题 更多 >