如何用Python写一个http post请求

Python020

如何用Python写一个http post请求,第1张

import urllib2

import urllib

 

#定义一个要提交的数据数组(字典)

data = {}

data['username'] = 'zgx030030'

data['password'] = '123456'

 

#定义post的地址

url = 'http://www.test.com/post/'

post_data = urllib.urlencode(data)

 

#提交,发送数据

req = urllib2.urlopen(url, post_data)

 

#获取提交后返回的信息

content = req.read()

import thread

text = None

def get_input():

global text

text = raw_input()

def main():

while True:

print "running"

if text != None:

break

thread.start_new_thread(get_input,())

main()

global全局变量吧?看看上面这段代码是我常用的套路,main()是一个无限循环一直输出running,如果你按下回车让get_input()线程里的text变成不是None了,那么main()就断了,希望对你有帮助

试试这样

header = {

"content-type": "application/json",

"a": json.dumps({"b": "b_value"}),

"some_param": json.dumps({"some_key_value": "some_string"})

}

也就是说用json.dumps把多余的嵌套变成字符串