Python3获取cookie常用三种方案
作者:lincappu 时间:2022-10-20 02:56:19
方案一:
利用selenium+phantomjs * 面浏览器的形式访问网站,再获取cookie值:
from selenium import webdriver
driver=webdriver.PhantomJS()
url="https://et.xiamenair.com/xiamenair/book/findFlights.action?lang=zh&tripType=0&queryFlightInfo=XMN,PEK,2018-01-15"
driver.get(url)
# 获取cookie列表
cookie_list=driver.get_cookies()
# 格式化打印cookie
for cookie in cookie_list:
cookie_dict[cookie['name']]=cookie['value']
方案二:
利用cookielib库获取:
(1)Python2
import cookielib
import urllib2
Url = "https://et.xiamenair.com/xiamenair/book/findFlights.action?lang=zh&tripType=0&queryFlightInfo=XMN,PEK,2018-01-15"
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
urllib2.install_opener(opener)
resp = urllib2.urlopen(Url)
for index, cookie in enumerate(cj):
print '[',index, ']',cookie
(2)Python3
from urllib import request
from http import cookiejar
#跳过SSL验证证书
import ssl
#设置忽略SSL验证
ssl._create_default_https_context = ssl._create_unverified_context
if __name__ == '__main__':
#声明一个CookieJar对象实例来保存cookie
cookie = cookiejar.CookieJar()
#利用urllib.request库的HTTPCookieProcessor对象来创建cookie处理器,也就CookieHandler
handler=request.HTTPCookieProcessor(cookie)
#通过CookieHandler创建opener
opener = request.build_opener(handler)
#此处的open方法打开网页
response = opener.open('http://www.baidu.com')
#打印cookie信息
for item in cookie:
print('Name = %s' % item.name)
print('Value = %s' % item.value)
方案三:
利用requests库获取:
Python3
def getCookie():
url = "****"
Hostreferer = {
#'Host':'***',
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36'
}
#urllib或requests在打开https站点是会验证证书。 简单的处理办法是在get方法中加入verify参数,并设为False
html = requests.get(url, headers=Hostreferer,verify=False)
#获取cookie:DZSW_WSYYT_SESSIONID
if html.status_code == 200:
print(html.cookies)
for cookie in html.cookies:
print(cookie)
来源:https://www.cnblogs.com/lincappu/p/12911412.html
标签:Python,cookie
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
数据库清除日志文件(LDF文件过大)
2024-01-14 04:05:36
表单验证中时间起止判断的递归处理
2009-12-16 19:27:00
Go代码检查的推荐工具及使用详解
2024-05-09 15:00:11
Python基于xlrd模块处理合并单元格
2023-08-28 21:10:49
![](https://img.aspxhome.com/file/2023/9/83959_0s.png)
python之pymysql模块简单应用示例代码
2024-01-22 00:22:45
asp+XMLHTTP的国际域名查询系统(whois)源代码
2008-02-16 09:23:00
Python NumPy灰度图像的压缩原理讲解
2021-02-16 02:46:33
python中字典增加和删除使用方法
2023-12-15 15:31:30
Python中如何获取类属性的列表
2023-02-10 21:57:41
springBoot下实现java自动创建数据库表
2024-01-24 12:26:31
![](https://img.aspxhome.com/file/2023/5/70325_0s.png)
详解python发送各类邮件的主要方法
2023-07-27 11:08:50
详细解读Python的web.py框架下的application.py模块
2021-06-24 22:28:47
解决python3在anaconda下安装caffe失败的问题
2023-01-30 03:22:43
python空值判断方式(if xxx和if xxx is None的区别及说明)
2022-04-01 20:18:42
Pandas 数据框增、删、改、查、去重、抽样基本操作方法
2023-07-25 14:50:07
python中使用.py配置文件的方法详解
2022-02-13 19:57:22
Python用input输入列表的实例代码
2021-09-22 09:33:53
![](https://img.aspxhome.com/file/2023/5/105815_0s.png)
解决json中ensure_ascii=False的问题
2023-01-04 10:49:11
MySQL 8.0 redo log的深入解析
2024-01-12 23:44:22
![](https://img.aspxhome.com/file/2023/2/102362_0s.png)
python运行cmd命令行的3种方法总结
2023-07-15 18:40:49