欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python?selenium?get_cookies獲取cookie不全的解決方案

 更新時間:2022年10月27日 10:48:40   作者:zhu6201976  
之前使用爬蟲時最讓我頭疼的就是cookie失效的問題了,下面這篇文章主要給大家介紹了關(guān)于Python?selenium?get_cookies獲取cookie不全的解決方案,需要的朋友可以參考下

一、場景

瀏覽器訪問淘寶,再訪問天貓,繼續(xù)訪問1688......

此時,瀏覽器中的cookie是什么狀態(tài)?

顯然,包含上述3個網(wǎng)站的所有cookie

二、此時,若通過selenium  get_cookies()方法,能獲取到瀏覽器所有cookie嗎?

答案顯然是不能的(webdriver安全考慮),此方法只能獲取當(dāng)前請求域名下的所有cookie

故訪問天貓或1688會登錄失敗。

那可以通過什么方式,將瀏覽器所有cookie獲?。?/p>

方案一:基于瀏覽器內(nèi)核,打造屬于自己的瀏覽器,解除限制

方案二:掛代理,F(xiàn)iddler,mitmproxy等

方案三:分別請求對應(yīng)域名,獲取所有cookie(推薦,筆者首創(chuàng))

三、樣例代碼

lmdd_url = f'{self.root_lmdd_url}/seller/dashboard/plan/order'
 
self.chrome.get(lmdd_url)
cookie_list = self.chrome.get_cookies()
 
self.chrome.get(self.root_lmdd_api_url)
cookie_list_api = self.chrome.get_cookies()
 
cookie_list.extend(cookie_list_api)
self.update_session_cookie(cookie_list)

補(bǔ)充:selenium通過add_cookie()添加cookie

selenium通過add_cookie()添加cookie,再次訪問網(wǎng)站時,服務(wù)器直接讀取瀏覽器cookie

第一次登陸 手動輸入用戶名密碼

# -*- coding:utf-8 -*-

from selenium import webdriver
from time import sleep

driver = webdriver.Firefox()
driver.get('http://www.baidu.com')
sleep(2)
driver.find_element_by_xpath('//*[@id="u1"]/a[7]').click()

driver.add_cookie({'name':'userName','value':'youname'})
driver.add_cookie({'name':'password','value':'youpassword'})

sleep(30)
driver.get('http://www.baidu.com')
driver.find_element_by_id('kw').send_keys('selenium')

總結(jié)

到此這篇關(guān)于Python selenium get_cookies獲取cookie不全解決的文章就介紹到這了,更多相關(guān)Python selenium get_cookies獲取cookie內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論