1. 程式人生 > >python中獲取cookie的兩種方法

python中獲取cookie的兩種方法

第一種是利用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']
print(cookie_dict)

第二種是是用cookielib庫獲取:

# python2.7環境
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;

python3的使用方法如下:

# python3.6環境
from urllib import request
from http import cookiejar

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)

相關推薦

python獲取cookie方法

第一種是利用selenium+phantomjs無介面瀏覽器的形式訪問網站,再獲取cookie值:# 匯入模組 from selenium import webdriver driver=webdri

Java程式碼獲取配置檔案(config.properties)內容的方法

方法千千萬,本人暫時只總結了兩種方法。 (1) config.properties中的內容如圖 在applicationContext.xml中配置 <!-- 引入配置檔案 --> <bean id="configProperties" cl

Python替換的三方法

nbsp 分享 分別是 images 空白 圖片 png 除開 str strip() replace() re.sub() 1.replace()是python的內置函數,字符類型.replace(old,new) s1="你好2017" s1.rep

Python實現獎金計算方法的比較

position class pla nbsp font fault and dem 100萬 應發獎金計算 簡述:企業發放的獎金根據利潤提成。利潤(profit)低於或等於10萬元時,獎金可提10%; 利潤高於10萬元,低於20萬元時,低於10萬元的部分按1

python的字典遍歷方式

方法 clas items color 兩種方法 pan code bsp for dic = {"k1":"v1", "k2":"v2"} for k in dic: print(dic[K]) for k, v in dic.items(): pri

python 生成隨機數的方法

1. 使用 random 包生成隨機數 可以生成 均勻分佈, 高斯分佈,(包括正態分佈) 指數分佈,(與泊松分佈有區別:泊松分佈表示一段時間發生多少次,而指數分佈表示兩次發生的時間間隔) 貝塔分佈, 韋布爾分佈的隨機數 由此可見,random 包支援的隨機分佈比較有限,功能較少.

Python操作Hive的方法總結

方法一:使用PyHive庫 安裝依賴包:其中sasl安裝可能會報錯,可以去https://www.lfd.uci.edu/~gohlke/pythonlibs/#sasl下載對應版本安裝。 pip install sasl pip install thrift pip install thr

方法實現Python二分查詢演算法 方法實現Python二分查詢演算法

兩種方法實現Python二分查詢演算法   一. ? 1 2

Python檔案操作的方法 快速入門

python內建函式 1.試著向檔案中寫一句話 路徑:“C:/Users/thinkpad/Desktop/demo.txt” 開啟方式:寫(‘w’) # -*- encoding: UTF-8 -*- fp = open("C:/Users/thinkpad/

python 開啟程序的方法、以及查詢子程序與父程序

方法1 先輸出主程序,再輸出子程序是因為 p.start() 只是給系統傳送就緒訊號有延時,所以主程序都執行完了,可能子程序才到他開始執行 from multiprocessing import Process # 建立程序的模組 def

資料獲取方法:DataList和SqlDataReader

資料獲取的兩種方法:一種是DataReader向後讀寫的類,缺點是不夠靈活; 另一種是DataSet資料集,會消耗一些額外的記憶體,但是靈活性高 string strsql = "Data Sour

OpenVR裝置位置獲取方法

OpenVR 下,獲取裝置位置的方法有兩個:WaitGetPoses 和 GetDeviceToAbsoluteTrackingPose。 WaitGetPoses: 會阻塞程式執行,直到底層獲取到新的裝置姿態位置才可以返回。 GetDeviceToAbsoluteTrackingPose: 則時通過傳遞預計

提取pdf檔案文字的方法

    如今,在我們的工作與學習中已經不是單單使用word、Excel等格式檔案了,pdf格式的檔案已經被廣泛地運用到我們的辦公室中。大家都知道pdf檔案是不可直接編輯與修改的,使用起來有些不便。那麼

python執行shell的方法總結

sleep follow 命令執行 inux 接收 以及 Go ber BE 這篇文章主要介紹了python中執行shell的兩種方法,有兩種方法可以在Python中執行SHELL程序,方法一是使用Python的commands包,方法二則是使用subprocess包,這

pythonlist轉csv的方法

方法一: name_attribute = ['NumberID','UserID','ModuleID','StartDate','EndDate','Frequent'] writerCSV=pd.DataFrame(columns=name_attribute,data=data) wr

Flask 設定cookie方法.獲取cookie,和刪除cookie方法(修改過期時間)

設定cookie 方法一: 建立物件   make_response的物件 呼叫物件 的set_cookie方法設定cookie 方法二: 直接設定表單頭 除了鍵值對,其他部分可去瀏覽器檢查摘抄  resp.headers["Set-Cook

MFC方法獲取系統時間

void CMFC2Dlg::OnBnClickedButton1() { // TODO: 在此新增控制元件通知處理程式程式碼 CTime t = CTime::GetCurrentTime(); int nYear=t.GetYear(); int nMonth=t.GetMonth(

python個列表升序合併並且去除列表重複元素的方法

程式碼如下  l1 = [1,2,7,12,4,9,5] l2 = [5,1,10,11,2] l3 = l1 + l2 l3.sort() # print(set(l3)) #去除重複元素方法一 l4 = [] #去除重複元素方法二 for x in l3:

Spring獲取bean的方法

第一種採用註解方法 註解的方法比較簡單,不在進行詳細介紹,這邊主要將的是另外一種方法,當通過註解獲取不到bean時,可以採用根據上下文獲取。 第二種上下文獲取bean @Component public class SpringBeanUtil implements Appli

ssm獲取絕對路徑的方法

專案中經常要上傳檔案然後儲存到專案中,這時就需要獲取專案的絕對路徑。方法一:如果我們是在controller裡面想獲取絕對專案的路徑:這樣就可以獲取到專案的絕對路徑了。方法二:我們可以在web.xml裡