最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python selenium操作cookie的實(shí)現(xiàn)

 更新時(shí)間:2020年03月18日 14:43:33   作者:隱泉  
這篇文章主要介紹了python selenium操作cookie的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

由于HTTP協(xié)議是無(wú)狀態(tài)協(xié)議,所以服務(wù)器與客戶端通過(guò)http協(xié)議通訊時(shí),服務(wù)器不能記錄客戶端的信息。

為了解決這個(gè)問(wèn)題,通過(guò) Cookie 和 Session 技術(shù)來(lái)實(shí)現(xiàn)。

  • Cookie保存在客戶端中
  • Session保存在服務(wù)器中

cookie的屬性

一般cookie所具有的屬性,包括:

Domain:域,表示當(dāng)前cookie所屬于哪個(gè)域或子域下面。

對(duì)于服務(wù)器返回的Set-Cookie中,如果沒(méi)有指定Domain的值,那么其Domain的值是默認(rèn)為當(dāng)前所提交的http的請(qǐng)求所對(duì)應(yīng)的主域名的。比如訪問(wèn) http://www.example.com,返回一個(gè)cookie,沒(méi)有指名domain值,那么其為值為默認(rèn)的www.example.com。

Path:表示cookie的所屬路徑。

Expire time/Max-age:表示了cookie的有效期。expire的值,是一個(gè)時(shí)間,過(guò)了這個(gè)時(shí)間,該cookie就失效了?;蛘呤怯胢ax-age指定當(dāng)前cookie是在多長(zhǎng)時(shí)間之后而失效。如果服務(wù)器返回的一個(gè)cookie,沒(méi)有指定其expire time,那么表明此cookie有效期只是當(dāng)前的session,即是session cookie,當(dāng)前session會(huì)話結(jié)束后,就過(guò)期了。對(duì)應(yīng)的,當(dāng)關(guān)閉(瀏覽器中)該頁(yè)面的時(shí)候,此cookie就應(yīng)該被瀏覽器所刪除了。

secure:表示該cookie只能用https傳輸。一般用于包含認(rèn)證信息的cookie,要求傳輸此cookie的時(shí)候,必須用https傳輸。

httponly:表示此cookie必須用于http或https傳輸。這意味著,瀏覽器腳本,比如javascript中,是不允許訪問(wèn)操作此cookie的。

得到cookie

#從百度首頁(yè)登錄百度賬號(hào),并獲取cookie
from selenium import webdriver
from time import sleep
import json
 
#啟動(dòng)chome瀏覽器并訪問(wèn)百度首頁(yè)
option=webdriver.ChromeOptions()
option.add_argument('--start-maximized')
drive=webdriver.Chrome(options=option)
drive.get('http://www.baidu.com')
print(drive.title)
 
#點(diǎn)擊“登錄”
eled=drive.find_element_by_link_text("登錄")
eled.click()
sleep(2)
 
#點(diǎn)擊“用戶名登錄”
namelogin=drive.find_element_by_css_selector('p.tang-pass-footerBarULogin')
namelogin.click()
sleep(2)
 
#輸入用戶名,密碼并登錄
username = drive.find_element_by_id('TANGRAM__PSP_10__userName')
username.send_keys('********')
sleep(1)
 
password = drive.find_element_by_id('TANGRAM__PSP_10__password')
password.send_keys('********')
sleep(1)
 
submit = drive.find_element_by_id('TANGRAM__PSP_10__submit')
submit.click()
sleep(3)
 
#獲取網(wǎng)站cookie
diccookie=drive.get_cookies()
fw=open('baiducookie.txt','w')
json.dump(diccookie,fw)
fw.close()

從硬盤讀取cookie,加入到request請(qǐng)求發(fā)送服務(wù)器。

import time
import json
 
啟動(dòng)chome瀏覽器并訪問(wèn)百度首頁(yè)
option=webdriver.ChromeOptions()
option.add_argument('--start-maximized')
drive=webdriver.Chrome(options=option)
 
drive.get('http://www.baidu.com')
print(drive.title)
 
fr=open('baidu_cookie.txt','r')
cookielist=json.load(fr)
fr.close()
for cookie in cookielist:
  drive.add_cookie(cookie)
     
sleep(5)
drive.get('http://www.baidu.com')
drive.refresh()

通過(guò)cookie登錄百度失?。?/p>

Message: unable to set cookie
Message: invalid argument: invalid 'expiry'

到此這篇關(guān)于python selenium操作cookie的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)python selenium操作cookie內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

绥棱县| 南通市| 天柱县| 秀山| 盐池县| 双柏县| 吴江市| 简阳市| 北票市| 元阳县| 呼伦贝尔市| 阳朔县| 和林格尔县| 乌什县| 九江县| 两当县| 响水县| 蒙自县| 昌吉市| 聂荣县| 江北区| 大埔县| 彭州市| 武平县| 永丰县| 溧水县| 崇礼县| 宾阳县| 于都县| 鄂托克前旗| 长乐市| 仙游县| 红桥区| 始兴县| 葫芦岛市| 兰溪市| 阿克| 竹北市| 慈利县| 鹤庆县| 肥乡县|