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脚本生成随机IP的简单方法
Jul 30 Python
Flask框架的学习指南之开发环境搭建
Nov 20 Python
查看Django和flask版本的方法
May 14 Python
通过Py2exe将自己的python程序打包成.exe/.app的方法
May 26 Python
Python Socket编程之多线程聊天室
Jul 28 Python
Python 限定函数参数的类型及默认值方式
Dec 24 Python
Python面向对象封装操作案例详解
Dec 31 Python
python对象销毁实例(垃圾回收)
Jan 16 Python
分享PyCharm最新激活码(真永久激活方法)不用每月找安装参数或最新激活码了
Dec 27 Python
Python项目打包成二进制的方法
Dec 30 Python
Django与AJAX实现网页动态数据显示的示例代码
Feb 24 Python
Python识别花卉种类鉴定网络热门植物并自动整理分类
Apr 08 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 htmlentities和htmlspecialchars 的区别
2008/08/18 PHP
php判断用户是否手机访问代码
2015/06/08 PHP
php代码架构的八点注意事项
2016/01/25 PHP
PHP正则判断一个变量是否为正整数的方法
2019/02/27 PHP
在网页中使用document.write时遭遇的奇怪问题
2010/08/24 Javascript
JavaScript运行机制之事件循环(Event Loop)详解
2014/10/10 Javascript
Javascript毫秒数用法实例
2015/02/05 Javascript
Node.js抓取中文网页乱码问题和解决方法
2015/02/10 Javascript
遮罩层点击按钮弹出并且具有拖动和关闭效果(两种方法)
2015/08/20 Javascript
JavaScript学习笔记之数组去重
2016/03/23 Javascript
jquery实现限制textarea输入字数的方法
2017/09/06 jQuery
vue 粒子特效的示例代码
2017/09/19 Javascript
快速解决处理后台返回json数据格式的问题
2018/08/07 Javascript
webpack 3.X学习之多页面打包的方法
2018/09/04 Javascript
layui table 表格上添加日期控件的两种方法
2019/09/28 Javascript
Layui弹框中数据表格中可双击选择一条数据的实现
2020/05/06 Javascript
举例介绍Python中的25个隐藏特性
2015/03/30 Python
详解python时间模块中的datetime模块
2016/01/13 Python
python单线程下实现多个socket并发过程详解
2019/07/27 Python
Python 实现使用空值进行赋值 None
2020/03/12 Python
Python新手如何理解循环加载模块
2020/05/29 Python
python爬虫 requests-html的使用
2020/11/30 Python
css3实现3D文本悬停改变效果的示例代码
2019/01/16 HTML / CSS
美国杂志订阅折扣与优惠网站:Magazines.com
2016/08/31 全球购物
简单介绍Object类的功能、常用方法
2013/10/02 面试题
创意活动策划书
2014/01/15 职场文书
矿泉水广告词
2014/03/20 职场文书
六一儿童节演讲稿
2014/05/23 职场文书
2014年师德师风自我剖析材料
2014/09/27 职场文书
2014年机关作风建设工作总结
2014/10/23 职场文书
普通员工辞职信范文
2015/05/12 职场文书
消防验收申请报告
2015/05/15 职场文书
2016年七夕情人节宣传语
2015/11/25 职场文书
《打电话》教学反思
2016/02/22 职场文书
2016年社会管理综治宣传月活动总结
2016/03/16 职场文书
Python+Matplotlib图像上指定坐标的位置添加文本标签与注释
2022/04/11 Python