【天天播资讯】Python selenium get_cookies获取cookie不全的解决方案
目录
一、场景二、此时,若通过seleniumget_cookies()方法,能获取到浏览器所有cookie吗?三、样例代码补充:selenium通过add_cookie()添加cookie总结一、场景
浏览器访问淘宝,再访问天猫,继续访问1688......
此时,浏览器中的cookie是什么状态?
(资料图)
显然,包含上述3个网站的所有cookie
二、此时,若通过seleniumget_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")
总结
到此这篇关于Python selenium get_cookies获取cookie不全解决的文章就介绍到这了,更多相关Python selenium get_cookies获取cookie内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
X 关闭
X 关闭
- 15G资费不大降!三大运营商谁提供的5G网速最快?中国信通院给出答案
- 2联想拯救者Y70发布最新预告:售价2970元起 迄今最便宜的骁龙8+旗舰
- 3亚马逊开始大规模推广掌纹支付技术 顾客可使用“挥手付”结账
- 4现代和起亚上半年出口20万辆新能源汽车同比增长30.6%
- 5如何让居民5分钟使用到各种设施?沙特“线性城市”来了
- 6AMD实现连续8个季度的增长 季度营收首次突破60亿美元利润更是翻倍
- 7转转集团发布2022年二季度手机行情报告:二手市场“飘香”
- 8充电宝100Wh等于多少毫安?铁路旅客禁止、限制携带和托运物品目录
- 9好消息!京东与腾讯续签三年战略合作协议 加强技术创新与供应链服务
- 10名创优品拟通过香港IPO全球发售4100万股 全球发售所得款项有什么用处?