本文共 1591 字,大约阅读时间需要 5 分钟。
urllib模块访问网络十分的方便:
1 简单的get请求
import urllibimport urllib.requesturl = "http://www.baidu.com"res = urllib.request.urlopen(url)#获取header信息对for k, v in res.getheaders(): print('%s: %s' % (k, v))#获取网页返回信息data = res.read()print(data.decode('utf-8'))#200返回状态码print(res.status)#OKprint(res.reason)url2 = "http://www.baidu.com"params={"key1":"values"}query_data = urllib.parse.urlencode(params)print(query_data)
2 复杂的Get请求
#利用Request添加header import urllib.requesturl = "http://www.baidu.com"req = urllib.request.Request(url)req.add_header('User-Agent', 'Mozilla/6.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/8.0 Mobile/10A5376e Safari/8536.25')with urllib.request.urlopen(req) as f: print('状态码和返回标识:', f.status, f.reason) for k, v in f.getheaders(): print('header键值对%s: %s' % (k, v)) print('\n') print('网页返回值:', f.read().decode('utf-8'))
3 Post请求
from urllib import request, parse#post请求参数req_data = parse.urlencode([ ('username', "123456"), ('password', "123456"),])#添加header信息req = request.Request('https://www.baidu.com')req.add_header('User-Agent', 'Mozilla/6.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/8.0 Mobile/10A5376e Safari/8536.25')req.add_header('Referer', 'https://www.baidu.com')with request.urlopen(req, data=req_data.encode('utf-8')) as f: print('Status:', f.status, f.reason) print('\n') print('header 键值对: ') print('\n') for k, v in f.getheaders(): print('%s: %s' % (k, v)) print('\n') print('返回数据:', f.read().decode('utf-8'))
转载地址:http://ispei.baihongyu.com/