Python3---高级功能---cookie存储
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python3---高级功能---cookie存储,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2646字,纯文字阅读大概需要4分钟。
内容图文
前言
该文章描述了代码登陆界面之后如何保存cookie并且之后的访问继续使用cookie来进行访问的操作。主要使用库http.cookiejar,urllib.request(),urllib.parse
新建时间:20191223
天象独行
首先,我们先了解一下Cookie这个作用,主要作用是用来提供一个证明,证明用户的信息。比方说在登陆账号之后,会接收到一个cookie,接下来的访问服务器通过cookie就可以确定账号信息,并且分配相对应的资源以及不用重复输入账号密码。
我们来说明一下http.cookiejar功能,主要功能是对接收下来的Cookie进行存储。下面是其他功能:
- CookieJar
- 管理储存cookie,像传出的http请求添加cookie
- cookie存储在内存中,CookieJar示例回收后cookie将自动消失
- FileCookieJar
- 是CookieJar的字类
- cookie保存在文件中
- MozillaCookiejar
- 是FileCookieJar的子类
- 与moccilla浏览器兼容
- LwpCookieJar
- 是FileCookieJar的子类
- 与libwww-perl标准兼容
注释关于urllib.request,urllib.parse内容可以查看如下网址:
https://www.cnblogs.com/aaron456-rgv/p/12051754.html
保存Cookie案例:
import urllib.request
import urllib.parse import http.cookiejar ''' 案例情景: 1;使用Python3登陆网址,并且报错接收的Cookie 2;通过保存下来的Cookie来继续访问URL ''' #创建一个cookiejar对象,用来存储获取的cookie new_cookie = http.cookiejar.CookieJar() #通过cookiejar对象来自定义一个handler new_handler = urllib.request.HTTPCookieProcessor(new_cookie) #设定一个opener new_opener = urllib.request.build_opener(new_handler) ''' 上面的操作,如果访问下来的cookie会被保存到对象new_cookie当中,换句话说以后通过new_openenr来访问URL会自动将保存的cookie发送出去。 ''' ''' 一;访问登陆界面 ''' #设定URL url1 = "http://192.168.1.136" #设定请求头字典 new_headers = { "Host": "192.168.1.136", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:70.0) Gecko/20100101 Firefox/70.0", "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2", "Accept-Encoding": "gzip, deflate", "Content-Type": "application/x-www-form-urlencoded", "Content-Length": "43", "Origin": "http://192.168.1.136", "Connection": "close", "Referer": "http://192.168.1.136/index.php", "Cookie": "PHPSESSID=fe78ef94f649511499b4568c82c240af", "Upgrade-Insecure-Requests": "1" } #设定Post传参值 new_post = { "user_name":"abc123", "pwd":"abc123", "x":"30", "y":"10" } #URL编码Post传参值 new_post_url = urllib.parse.urlencode(new_post).encode() #生成请求request new_request = urllib.request.Request(url=url1,headers=new_headers) #发送请求 new_result = new_opener.open(new_request,data=new_post_url) ''' 上面代码已经发送登陆请求,之后cookie会被存储到new_Cookie里。 '''
'''
二;随意访问登陆之后的页面,查看是否能个访问
'''
url2 = 'http://192.168.1.136/user.php?act=news_manage' new_result2 = new_opener.open(url2) print(new_result2.read().decode(encoding="GBK"))
结果:
内容总结
以上是互联网集市为您收集整理的Python3---高级功能---cookie存储全部内容,希望文章能够帮你解决Python3---高级功能---cookie存储所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。