Python3获取cookie常用三种方案


Posted in Python onOctober 05, 2020

方案一:

利用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)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现截屏的函数
Jul 26 Python
简单谈谈python的反射机制
Jun 28 Python
简述Python2与Python3的不同点
Jan 21 Python
Numpy array数据的增、删、改、查实例
Jun 04 Python
详解django中使用定时任务的方法
Sep 27 Python
python环形单链表的约瑟夫问题详解
Sep 27 Python
解决pycharm remote deployment 配置的问题
Jun 27 Python
用Python获取摄像头并实时控制人脸的实现示例
Jul 11 Python
python基于plotly实现画饼状图代码实例
Dec 16 Python
python logging添加filter教程
Dec 24 Python
基于MSELoss()与CrossEntropyLoss()的区别详解
Jan 02 Python
Opencv 图片的OCR识别的实战示例
Mar 02 Python
Python collections.deque双边队列原理详解
Oct 05 #Python
Python全局变量与global关键字常见错误解决方案
Oct 05 #Python
Python定时任务框架APScheduler原理及常用代码
Oct 05 #Python
Python xmltodict模块安装及代码实例
Oct 05 #Python
Python pathlib模块使用方法及实例解析
Oct 05 #Python
Python fileinput模块如何逐行读取多个文件
Oct 05 #Python
Python利用Pillow(PIL)库实现验证码图片的全过程
Oct 04 #Python
You might like
推荐个功能齐全的发送PHP邮件类
2007/01/03 PHP
PHP 获取远程网页内容的代码(fopen,curl已测)
2011/06/06 PHP
ThinkPHP模板IF标签用法详解
2014/07/01 PHP
PHP has encountered a Stack overflow问题解决方法
2014/11/03 PHP
零基础php编程好学吗
2019/10/11 PHP
Laravel5.1框架路由分组用法实例分析
2020/01/04 PHP
JS获得QQ号码的昵称,头像,生日的简单实例
2013/12/04 Javascript
js获取内联样式的方法
2015/01/27 Javascript
Node.js抓取中文网页乱码问题和解决方法
2015/02/10 Javascript
jQuery获取单选按钮radio选中值与去除所有radio选中状态的方法
2017/05/20 jQuery
bootstrap基本配置_动力节点Java学院整理
2017/07/14 Javascript
vue.js数据绑定操作详解
2018/04/23 Javascript
vue后台管理之动态加载路由的方法
2018/08/13 Javascript
[01:02:34]TFT vs VGJ.T Supermajor 败者组 BO3 第二场 6.5
2018/06/06 DOTA
python自定义类并使用的方法
2015/05/07 Python
python中pygame针对游戏窗口的显示方法实例分析(附源码)
2015/11/11 Python
Python闭包函数定义与用法分析
2018/07/20 Python
pycharm安装和首次使用教程
2018/08/27 Python
pycharm 配置远程解释器的方法
2018/10/28 Python
python保存字典和读取字典的实例代码
2019/07/07 Python
wxPython之wx.DC绘制形状
2019/11/19 Python
python更新数据库中某个字段的数据(方法详解)
2020/11/18 Python
Gap中国官网:美式休闲风服饰
2017/02/05 全球购物
英国皇家邮政海外旗舰店:Royal Mail
2018/02/21 全球购物
Java里面如何创建一个内部类的实例
2015/01/19 面试题
计算机应用与科学个人的自我评价
2013/11/15 职场文书
采购主管工作职责
2013/12/12 职场文书
女方婚礼新郎答谢词
2014/01/11 职场文书
党旗在我心中演讲稿
2014/09/15 职场文书
以权谋私检举信范文
2015/03/02 职场文书
大国崛起日本观后感
2015/06/02 职场文书
2016年党员学习廉政准则心得体会
2016/01/20 职场文书
2019学校请假条格式及范文
2019/06/25 职场文书
2019年行政人事个人工作总结范本!
2019/07/19 职场文书
VUE中的v-if与v-show区别介绍
2022/03/13 Vue.js
JavaScript中的LHS和RHS分析详情
2022/04/06 Javascript