python分隔符参数_Python的 - 正确格式的HTTP POST,但分隔符

I have a python script accepting the output of a bash command 'ibeacon_scan'. I am getting this error when running the script.

Traceback (most recent call last):

file "./stdin.py", line 12, in

conn.request("POST", "post.php", params, headers)

NameError: name 'params is not defined

Here is the code for 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()

The output of the 'ibeacon_san' command is:

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

My question is, how do change my script send a query string such as:

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"}

I don't know how to get the fileinput formatted into a query string. Does my formatting look somewhat correct? The delimiter is a space for the data coming into the python script. I'm using Raspbian on a Raspberry Pi.

解决方案

You have a typo on the line where you define params - you call it parmas.

Generally, if you read the error message it's quite helpful. This clearly tells you that you don't have a variable defined called params - so go check that part of your code!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值