python中cookie获取

在前面学习中,cookie似乎一直没通,今天发现了一个能够读取网页cookie的代码,分享给大家,同时记录,今天写代码遇到的一系列问题:
python遇到‘\u’开头的unicode编码
web信息中常会遇到“\u…\u…”类型的字符。首先’\u‘开头就基本表明是跟unicode编码相关的,“\u”后的16进制字符串是相应汉字的utf-16编码。python里decode()和encode()为我们提供了解码和编码的方法。其中decode(‘unicode_escape’)能将此种字符串解码为unicode字符串。

str1 = '\u4f60\u597d'
print (str1.decode('unicode_escape'))
输出为:你好

关于json中 load jump//loads jumps的理解

dumps:将str转换成规则的json格式
dump:将str格式的json保存在接送文件中

loads:将json格式的数据,变为str格式
load:将接送格式的文本数据,变为str格式

cookie

下面直接给出代码:

import http.cookiejar
import urllib.request
from http import cookiejar
from urllib import request

cookie = http.cookiejar.CookieJar()
handler = urllib.request.HTTPCookieProcessor(cookie)
opener = urllib.request.build_opener(handler)
response = opener.open('http://www.baidu.com')
for item in cookie:
    print(item.name + "=" + item.value)
上述为输出其cookie内容    
    
# 设置保存cookie的文件,同级目录下的cookie.txt
filename = 'cookie3.txt'
# 声明一个MozillaCookieJar对象实例来保存cookie,之后写入文件
cookie = cookiejar.MozillaCookieJar(filename)
# 利用urllib库的HTTPCookieProcessor对象来创建cookie处理器
handler = request.HTTPCookieProcessor(cookie)
# 通过handler来构建opener
opener = request.build_opener(handler)
# 创建一个请求,原理同urllib2的urlopen
response = opener.open("http://www.baidu.com")
# 保存cookie到文件
cookie.save(ignore_discard=True, ignore_expires=True)
上述获取到cookie内容后,进行保存方便使用

cookie = cookiejar.MozillaCookieJar()  # 声明CookieJar对象实例来保存cookie
cookie.load('cookie3.txt', ignore_discard=True, ignore_expires=True)  # 从文件中读取内容到cookie变量中
handler = request.HTTPCookieProcessor(cookie)  # 处理器
opener = request.build_opener(handler)
x=opener.open('http://www.douban.com').read().decode("utf-8")
print(x)

通过上述处理,即为采用cookie获取缓存数据,来获取网页源码

你可能感兴趣的:(python爬虫)