Ⅰ 如何用python写一个http post请求
用这个:class urllib2.Request(url[, data][, headers][, origin_req_host][, unverifiable])
其中data就是post的内容。
从别的地方找了个例子一看就能懂。
import urllib
import urllib2
url = 'http://umbra.nascom.nasa.gov/cgi-bin/eit-catalog.cgi'
values = {'obs_year':'2011','obs_month':'March',
'obs_day':'8','start_year':'2011'
,'start_month':'March','start_day':'8'
,'start_hour':'All Hours','stop_year':'2011'
,'stop_month':'March','stop_day':'8'
,'stop_hour':'All Hours','xsize':'All'
,'ysize':'All','wave':'all'
,'filter':'all','object':'all'
,'xbin':'all','ybin':'all'
,'highc':'all'}
data = urllib.urlencode(values)
print data
req = urllib2.Request(url, data)
response = urllib2.urlopen(req)
the_page = response.read()
print the_page
Ⅱ python 怎么处理http post 的请求参数
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()
以上。
Ⅲ python 什么是http异步请求
http请求为耗时IO操作,如果同步阻塞的话,进程会等待请求完成。
异步的话,进程会发出http请求(请求以后不需要cpu),然后跳转到别的任务,直到http请求完成,再调回来继续处理得到的http回应。
最经典的例子就是烧水,同步阻塞就是你一直蹲在炉子旁边等待水烧开,而异步是把水壶放在炉子上,等水开了以后茶壶会叫,这时候你听到声音就会回来处理开水~
Ⅳ 使用python的requests库运行http请求,请问如图的报错是什么原因,要怎么解决的
post的参数顺序再检查确认一下,可以使用类似data=data,header=head的方式赋值避免混淆。
Ⅳ python 怎么处理http post 的请求参数
import httplib, urllib
from urlparse import urlparse
def httppost(url, **kwgs):
httpClient = None
conn = urlparse(url)
try:
params = urllib.urlencode(dict(kwgs))
header = {"Content-type": "application/x-www-form-urlencoded","Accept": "text/plain", }
httpClient = httplib.HTTPConnection(conn.netloc, conn.port, timeout=30)httpClient.request("POST", conn.path, params, header)response = httpClient.getresponse()
print response.status
print response.reason
print response.read()
print response.getheaders()
except Exception, e:
print e
finally:
if httpClient:
httpClient.close()
Ⅵ python 怎么处理http post 的请求参数
import httplib, urllib
from urlparse import urlparse
def httppost(url, **kwgs):
httpClient = None
conn = urlparse(url)
try:
params = urllib.urlencode(dict(kwgs))
header = {"Content-type": "application/x-www-form-urlencoded",
"Accept": "text/plain", }
httpClient = httplib.HTTPConnection(conn.netloc, conn.port, timeout=30)
httpClient.request("POST", conn.path, params, header)
response = httpClient.getresponse()
print response.status
print response.reason
print response.read()
print response.getheaders()
except Exception, e:
print e
finally:
if httpClient:
httpClient.close()
Ⅶ python里同时发送多个http请求怎么弄
多个同进的话,使用多线程就可以,也可以使用多进程,多进程可以更好的利用多核CPU的能力。