Python cookie的保存与读取、SSL讲解


Posted in Python onFebruary 17, 2020

一、cookie的保存与读取

1.cookie的保存-FileCookie.Jar

from urllib import request,parse

from http import cookiejar

#创建cookiejar实例

filename = "cookie.txt"

cookie = cookiejar.MozillaCookieJar(filename)

#生成cookie的管理器

cookie_handler = request.HTTPCookieProcessor(cookie)

#创建http请求管理器

http_handler = request.HTTPHandler()

#生成https管理器

https_handler = request.HTTPHandler()

#创建请求管理器

opener = request.build_opener(http_handler,https_handler,cookie_handler)

​

def login():

 """

 负责初次登录

 需要输入用户名密码

 :return:

 """

 url = "http://www.renren.com/PLogin.do"

 data = {

 "email":"1215217867@qq.com",

 "password":"481648541615485"

 }

 #把数据进行编码

 data = parse.urlencode(data)

 #创建一个请求对象

 req = request.Request(url,data=data.encode())

 #使用opener发起请求

 rep = opener.open(req)

 #保存cookie到文件

 #ignore_discard表示及时cookie将要被丢弃也要保存下来

 #ignore_expire表示如果该文件中cookie即使已经过期,保存

 cookie.save(ignore_discard=True,ignore_expires=True)

​

def getHomePage():

 url = "http://www.renren.com/965187997/profile"

 #如果已经执行了login函数,则opener自动已经包含相应的cookie值

 rsp = opener.open(url)

​

 html = rsp.read().decode()

 with open("rsp.html","w") as f:

 f.write(html)

​

if __name__ == "__main__":

 """

 执行完login之后,会得到授权之后的cookie

 我们尝试把cookie打印出来

 """

 login()

 getHomePage()

Python cookie的保存与读取、SSL讲解

2.cookie的读取

from urllib import request,parse

from http import cookiejar

#创建cookiejar实例

cookie = cookiejar.MozillaCookieJar()

cookie.load("cookie.txt",ignore_discard=True,ignore_expires=True)

​

#生成cookie的管理器

cookie_handler = request.HTTPCookieProcessor(cookie)

#创建http请求管理器

http_handler = request.HTTPHandler()

#生成https管理器

https_handler = request.HTTPHandler()

#创建请求管理器

opener = request.build_opener(http_handler,https_handler,cookie_handler)

​

def login():

 """

 负责初次登录

 需要输入用户名密码

 :return:

 """

 url = "http://www.renren.com/PLogin.do"

 data = {

 "email":"1215217867@qq.com",

 "password":"481648541615485"

 }

 #把数据进行编码

 data = parse.urlencode(data)

 #创建一个请求对象

 req = request.Request(url,data=data.encode())

 #使用opener发起请求

 rep = opener.open(req)

 #保存cookie到文件

 #ignore_discard表示及时cookie将要被丢弃也要保存下来

 #ignore_expire表示如果该文件中cookie即使已经过期,保存

 cookie.save(ignore_discard=True,ignore_expires=True)

​

def getHomePage():

 url = "http://www.renren.com/965187997/profile"

 #如果已经执行了login函数,则opener自动已经包含相应的cookie值

 rsp = opener.open(url)

​

 html = rsp.read().decode()

 with open("rsp.html","w") as f:

 f.write(html)

​

​

if __name__ == "__main__":

 """

 执行完login之后,会得到授权之后的cookie

 我们尝试把cookie打印出来

 """

 # login()

 getHomePage()

改代码读取了保存的cookie文件,并且​访问网页成功。

二、SSL

1.什么是SSL

(1)SSL证书就是指遵守SSL安全套阶层协议的服务器数字证书(SercureSocketLayer)

(2)该证书是由美国网景公司开发

(3)CA(CertifacateAuthority)是数字证书认证中心,是发放、管理、废除数字证书的收信人的​第三方机构。

(4)遇到不信任的SSL证书,可以用代码进行忽略掉

from urllib import request

#导入python ssl处理模块

import ssl

#利用非认证上下文环境替换认证的下文环境

ssl._create_default_https_context = ssl._create_unverified_context

url = "https://www.12306.cn/mormhweb/"

rsp = request.urlopen(url)

​

html = rsp.read().decode()

​

print(html)

Python cookie的保存与读取、SSL讲解

三、源码

Reptitle7_1_SaveCookie.py

Reptitle7_2_LoadCookie.py

Reptitle7_3_SSLAnalysis.py

以上就是本次介绍的全部相关知识点,感谢大家的学习和对三水点靠木的支持。

Python 相关文章推荐
Python 实现数据库(SQL)更新脚本的生成方法
Jul 09 Python
Python3安装Scrapy的方法步骤
Nov 23 Python
python OpenCV学习笔记直方图反向投影的实现
Feb 07 Python
Python使用selenium实现网页用户名 密码 验证码自动登录功能
May 16 Python
mac下给python3安装requests库和scrapy库的实例
Jun 13 Python
python感知机实现代码
Jan 18 Python
Python如何计算语句执行时间
Nov 22 Python
python基于event实现线程间通信控制
Jan 13 Python
Django 5种类型Session使用方法解析
Apr 29 Python
Pycharm安装并配置jupyter notebook的实现
May 18 Python
PyCharm MySQL可视化Database配置过程图解
Jun 09 Python
Python3实现英文字母转换哥特式字体实例代码
Sep 01 Python
Python中用pyinstaller打包时的图标问题及解决方法
Feb 17 #Python
Python交互环境下打印和输入函数的实例内容
Feb 16 #Python
Python爬取新型冠状病毒“谣言”新闻进行数据分析
Feb 16 #Python
基于python实现微信好友数据分析(简单)
Feb 16 #Python
Python如何将图像音视频等资源文件隐藏在代码中(小技巧)
Feb 16 #Python
python中的 zip函数详解及用法举例
Feb 16 #Python
Python中zip()函数的解释和可视化(实例详解)
Feb 16 #Python
You might like
php 无限级分类,超级简单的无限级分类,支持输出树状图
2014/06/29 PHP
WordPress JQuery处理沙发头像
2009/06/22 Javascript
jQuery Clone Bug解决代码
2010/12/22 Javascript
jquery 获取标签名(tagName)示例代码
2013/07/11 Javascript
javascript实现继承的简单实例
2015/07/26 Javascript
jQuery实现可关闭固定于底(顶)部的工具条菜单效果
2015/11/06 Javascript
JS创建对象的写法示例
2016/11/04 Javascript
解读vue生成的文件目录结构及说明
2017/11/27 Javascript
javascript代码优化的8点总结
2018/01/29 Javascript
基于vue-video-player自定义播放器的方法
2018/03/21 Javascript
js限制输入框只能输入数字(onkeyup触发)
2018/09/28 Javascript
js实现搜索栏效果
2018/11/16 Javascript
使用jquery模拟a标签的click事件无法实现跳转的解决
2018/12/04 jQuery
element-ui如何防止重复提交的方法步骤
2019/12/09 Javascript
JavaScript仿京东秒杀倒计时
2020/03/17 Javascript
javascript实现贪吃蛇游戏(娱乐版)
2020/08/17 Javascript
Python使用MYSQLDB实现从数据库中导出XML文件的方法
2015/05/11 Python
Python在不同目录下导入模块的实现方法
2017/10/27 Python
Python操作mysql数据库实现增删查改功能的方法
2018/01/15 Python
python实现在图片上画特定大小角度矩形框
2018/10/24 Python
python 将对象设置为可迭代的两种实现方法
2019/01/21 Python
PyQt QCombobox设置行高的方法
2019/06/20 Python
解决pyshp UnicodeDecodeError的问题
2019/12/06 Python
Python Django中的STATIC_URL 设置和使用方式
2020/03/27 Python
python能自学吗
2020/06/18 Python
keras 自定义loss model.add_loss的使用详解
2020/06/22 Python
opencv 图像轮廓的实现示例
2020/07/08 Python
历史学专业毕业生求职信
2013/09/27 职场文书
商学院大学生求职的自我评价
2014/03/12 职场文书
纪念9.18事变演讲稿
2014/09/14 职场文书
皇城相府导游词
2015/02/06 职场文书
2015公司年度工作总结
2015/05/14 职场文书
教研活动主持词
2015/07/03 职场文书
煤矿隐患排查制度
2015/08/05 职场文书
安全教育日主题班会
2015/08/13 职场文书
2016年共产党员公开承诺书
2016/03/24 职场文书