原教程来源于imooc
链接地址:http://www.imooc.com/learn/563
urllib的三种下载网页方法
1、测试代码
# urlopen的参数可以是request对象和url
from urllib import request
import http.cookiejar
url = 'http://www.baidu.com' # 指定url为百度首页
print('第一种方法:')
response1 = request.urlopen(url) # 用urllib.request的urlopen方法,以url作为参数下载网页
print(response1.getcode())
print(len(response1.read()))
print('第二种方法')
req = request.Request(url) # 创建request对象添加特殊处理,url作为参数
req.add_header('user-agent', 'Mozilla/5.0') # 把爬虫伪装成浏览器
response2 = request.urlopen(req) # urlopen方法的参数改为request
print(response2.getcode())
print(len(response2.read()))
print('第三种方法')
cj = http.cookiejar.CookieJar() # 创建cookie容器
opener = request.build_opener(request.HTTPCookieProcessor(cj)) # 创建opener,以cj为容器
request.install_opener(opener) # 为request安装opener,使request具有cookie处理能力
response3 = request.urlopen(url)
print(response3.getcode())
print(cj) # 打印cookie容器内容
print(response3.read())
2、测试结果