1.发送get请求
第一种方法,注意,有些地方误传这种方法发送的post请求,实际这是发送的get请求,urllib.urlencode
明显是get请求的编码
url = 'http;//www.baidu.com'
postdata = dict('username' : 'admin', 'password':'notapass')
postdata=urllib.urlencode(postdata)
request = urllib2.Request(url, postdata)
try:
response = urllib2.urlopen(request)
except urllib2.URLError as ex:
import pdb; pdb.set_trace() # Use ipdb if installed
else:
result= response.read()
print result
或者,手动把参数编辑在url里
url = 'http;//www.baidu.com?username=admin&password=notapass'
request = urllib2.Request(url, postdata)
try:
response = urllib2.urlopen(request)
except urllib2.URLError as ex:
import pdb; pdb.set_trace() # Use ipdb if installed
else:
result= response.read()
print result
2.发送post请求
不同之处在于,把发送的参数使用json格式编码
url = 'http;//www.baidu.com'
postdata = dict('username' : 'admin', 'password':'notapass')
postdata = json.dumps(postdata)
request = urllib2.Request(url, postdata)
request.add_header('Content-Type','application/json')
try:
response = urllib2.urlopen(request)
except urllib2.URLError as ex:
import pdb; pdb.set_trace() # Use ipdb if installed
else:
result= response.read()
print result