一、urllib.urlopen
1、urlopen
from urllib import request
r = request.urlopen('http://www.baidu.com/')
# 获取状态码
print(r.status)
# 获取相应头
print(r.getheaders())
print('=' * 30)
# 获取网页源码
print(r.read().decode('utf-8'))
注意:urlopen() 含有data(bytes类型)的是post请求,timeout超时
2、Request
from urllib import request
# 创建请求对象
req = request.Request('https://www.cnblogs.com/')
# 打开网页
r = request.urlopen(req)
print(r.read().decode('utf-8'))
注意:data(bytes,dict->str->bytes),headers={}, method=
使用Handler实现验证、Cookies、代理等功能
二、urllib.error
处理异常
from urllib.error import URLError, HTTPError
使用try....except进行处理
注意:HTTPError是URLRrror的子类
三、urllin.parse
解析
urlparse()
urlunparse()
urlsplit()
urlunsplit()
urljoin()
urlencode() # 序列胡parse_qsl() # 反序列化 结果 [('name', 'tom'), ('age', 24)] 可以使用dict->字典格式
quote()
unquote()
四、 Robot协议
robot.txt文件,爬虫界的君子协议