方案一:
利用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)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍CodeIgniter中使用cookie的三种方式详解,包括了CodeIgniter中使用cookie的三种方式详解的使用技巧和注意事项,需要的朋友参考一下 cookie在php程序设计中应用十分广泛,本文所述CodeIgniter中使用cookie主要有以下三种方式,读者可以根据自身项目需求酌情采用。 第一种方式:采用php原生态的方法设置的cookie的值 第二种方式:通过CI框
本文向大家介绍获取用键盘输入常用的两种方法?相关面试题,主要包含被问及获取用键盘输入常用的两种方法?时的应答技巧和注意事项,需要的朋友参考一下 方法1:通过 Scanner 方法2:通过 BufferedReader
本文向大家介绍Android获取文字高度的三种方法,包括了Android获取文字高度的三种方法的使用技巧和注意事项,需要的朋友参考一下 前言 本文是对获取文字高度整理和总结,参考资料源自 statcoverflow的一个回答。具体参看下面的参考链接 获取文字高度的三个方法 paint.getTextBounds(String text, int start, int end, Rect bound
本文向大家介绍关于ZeroMQ 三种模式python3实现方式,包括了关于ZeroMQ 三种模式python3实现方式的使用技巧和注意事项,需要的朋友参考一下 ZeroMQ是一个消息队列网络库,实现网络常用技术封装。在C/S中实现了三种模式,这段时间用python简单实现了一下,感觉python虽然灵活。但是数据处理不如C++自由灵活。 Request-Reply模式: 客户端在请求后,服务端必须
获取token分为两个步骤,第一步是获取授权码,第二步才是获取token。 获取demo 获取授权码 请求格式: GET https://ppmessage.com/ppauth/auth?state=xxxx&client_id=xxxx&redirect_id=xxxx&response_type=code 参数说明: 参数 说明 state 表示客户端的当前状态,可以指定任意值,PPMess
本文向大家介绍python获取linux系统信息的三种方法,包括了python获取linux系统信息的三种方法的使用技巧和注意事项,需要的朋友参考一下 方法一:psutil模块 方法二:proc 方法三:subprocess 以上就是python获取linux系统信息的三种方法的详细内容,更多关于python获取linux系统信息的资料请关注呐喊教程其它相关文章!