網站首頁 編程語言 正文
一、場景
瀏覽器訪問淘寶,再訪問天貓,繼續訪問1688......
此時,瀏覽器中的cookie是什么狀態?
顯然,包含上述3個網站的所有cookie
二、此時,若通過selenium??get_cookies()方法,能獲取到瀏覽器所有cookie嗎?
答案顯然是不能的(webdriver安全考慮),此方法只能獲取當前請求域名下的所有cookie
故訪問天貓或1688會登錄失敗。
那可以通過什么方式,將瀏覽器所有cookie獲取?
方案一:基于瀏覽器內核,打造屬于自己的瀏覽器,解除限制
方案二:掛代理,Fiddler,mitmproxy等
方案三:分別請求對應域名,獲取所有cookie(推薦,筆者首創)
三、樣例代碼
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)
補充:selenium通過add_cookie()添加cookie
selenium通過add_cookie()添加cookie,再次訪問網站時,服務器直接讀取瀏覽器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')
總結
原文鏈接:https://blog.csdn.net/zhu6201976/article/details/125665774
相關推薦
- 2022-11-16 通用?HTTP?簽名組件的另類實現方式_實用技巧
- 2022-01-13 macOS 升級后 nvm 安裝的 node 和 npm 出錯
- 2022-07-10 Linux安裝及管理程序
- 2022-12-09 Flutter?CustomPaint自定義繪畫示例詳解_IOS
- 2022-06-04 c#中String類型的存儲原理詳解_C#教程
- 2022-11-23 Python?threading模塊中lock與Rlock的使用詳細講解_python
- 2022-07-09 docker 中進程的信號
- 2022-05-19 nginx中封禁ip和允許內網ip訪問的實現示例_nginx
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支