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 相关文章推荐
Python2中的raw_input() 与 input()
Jun 12 Python
Python 文件操作的详解及实例
Sep 18 Python
Python实现嵌套列表去重方法示例
Dec 28 Python
python使用mysql的两种使用方式
Mar 07 Python
Python打印输出数组中全部元素
Mar 13 Python
python实现可变变量名方法详解
Jul 01 Python
解决python3 requests headers参数不能有中文的问题
Aug 21 Python
python 消除 futureWarning问题的解决
Dec 25 Python
python 实现朴素贝叶斯算法的示例
Sep 30 Python
python 如何用map()函数创建多线程任务
Apr 07 Python
pytorch 实现多个Dataloader同时训练
May 29 Python
Python经常使用的一些内置函数
Apr 11 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检索或者复制远程文件的方法
2015/03/13 PHP
php打造智能化的柱状图程序,用于报表等
2015/06/19 PHP
PHP实现自动发送邮件功能代码(qq 邮箱)
2017/08/18 PHP
利用PHP判断是手机移动端还是PC端访问的函数示例
2017/12/14 PHP
php实现的mongoDB单例模式操作类
2018/01/20 PHP
jQuery aminate方法定位到页面具体位置
2013/12/26 Javascript
javascript的解析执行顺序在各个浏览器中的不同
2014/03/17 Javascript
jquery实现的一个文章自定义分段显示功能
2014/05/23 Javascript
jquery 操作css样式、位置、尺寸方法汇总
2014/11/28 Javascript
jQuery实现菜单感应鼠标滑动动画效果的方法
2015/02/28 Javascript
javascript实现tab切换的四种方法
2015/11/05 Javascript
利用js判断手机是否安装某个app的多种方案
2017/02/13 Javascript
jquery实现tab键进行选择后enter键触发click行为
2017/03/29 jQuery
深入理解Angularjs中$http.post与$.post
2017/05/19 Javascript
js 事件的传播机制(实例讲解)
2017/07/20 Javascript
[01:41]DOTA2 2015国际邀请赛中国区预选赛第三日战报
2015/05/28 DOTA
python中的一些类型转换函数小结
2013/02/10 Python
python3模拟百度登录并实现百度贴吧签到示例分享(百度贴吧自动签到)
2014/02/24 Python
python益智游戏计算汉诺塔问题示例
2014/03/05 Python
Python对数据库操作
2016/03/28 Python
Python 模板引擎的注入问题分析
2017/01/01 Python
Python缓存技术实现过程详解
2019/09/25 Python
Python单链表原理与实现方法详解
2020/02/22 Python
关于Django Models CharField 参数说明
2020/03/31 Python
Python实现ElGamal加密算法的示例代码
2020/06/19 Python
python 合并多个excel中同名的sheet
2021/01/22 Python
酒店人事专员岗位职责
2013/12/19 职场文书
老总助理工作岗位职责
2014/02/06 职场文书
党员应该树立反腐倡廉的坚定意识思想汇报
2014/09/12 职场文书
党员个人批评与自我批评
2014/10/14 职场文书
巴黎圣母院观后感
2015/06/10 职场文书
百年校庆感言
2015/08/01 职场文书
提档介绍信范文
2015/10/22 职场文书
《称赞》教学反思
2016/02/17 职场文书
SqlServer: 如何更改表的文件组?(进而改变存储位置)
2021/04/05 SQL Server
python 镜像环境搭建总结
2022/09/23 Python