在前面写过一篇《requests下载并使用cookies》,除了用requests,用http.cookiejar同样能实现,不过步骤繁琐很多,用http.cookiejar首先需要创建一个cookiejar对象,然后再用cookiejar创建一个handler,再在handler中创建一个opener,最后在opener中传递帐号密码,获取cookies信息。
下面主要介绍两种使用方法,一种是直接获取cookies信息然后获取目标网页信息;一种是先将cookies信息下载,再加载cookies信息并获取目标网页信息。下面直接用人人网举例说明。
一、直接获取cookies信息然后获取目标网页信息
简单来说分来两步完成,先登录并获取cookies信息,再用带cookies信息的opener获取目标页面信息
from urllib import request,parse
from http.cookiejar import CookieJar
#1、登录
#1.1、创建一个cookiejar对象
cookiejar = CookieJar()
#1.2、使用cookiejar创建一个HTTPCookieProcessor对象
handler = request.HTTPCookieProcessor(cookiejar)
#1.3、使用上一步创建的Handler创建一个opener
opener = request.build_opener(handler)
#1.4、使用opener发送登录请求(邮箱密码)
headers = {
'User-Agent':'Mozilla/5.0