原 WEB技术
|-转 session:手动删除客户端上的所有cookie,再次访问的时候为什么还是登录状态?
原因可能是:受到启发,在浏览器里用代码和点击正在使用的cookie中去删除cookie,删除后刷新页面或者再登录不用密码直接登录了。测试了,登录后直接访问浏览器删除浏览数据(包括cookie等) 之后登录状态就没了 20243018
session ID没有设置生存周期的话,那么浏览器默认关闭的时候自动清除保存session ID的Cookie,此时Cookie是保存在客户端的内存中,由浏览器维护,浏览器关闭后就消失了,所以在浏览器的Cookie目录里是找不到这个保存着session ID的Cookie的文件,浏览器的清除缓存机制是只清除硬盘内Cookie,而不会清除内存中的Cookie...
浏览更多内容请先登录。
立即注册
更新于:2024-03-18 21:47:40
|--转 python + selenium清除Chrome缓存
python + selenium清除Chrome缓存_selenium删除指定网页的localstorage-CSDN博客
python + 清除Chrome缓存
在网上搜索了很久,尝试了很多方法,最终得到了一个有用的
直接上代码
from selenium import webdriver
driver = webdriver.Chrome()
# 设置隐式等待
driver.implicitly_wait(10)
# 清除缓存提示框
driver.get(chrome://settings/clearBrowserData)
# 2S 等待时间
time.sleep(2)
clearButton = driver.execute_script("return document.querySelector(settings-ui).shadowRoot.querySelector(settings-main).shadowRoot.querySelector(settings-basic-page).shadowRoot.querySelector(settings-section > settings-privacy-page).shadowRoot.querySelector(settings-clear-browsing-data-dialog).shadowRoot.querySelector(#clearBrowsingDataDialog).querySelector(#clearBrowsingDataConfirm)")
clearButton.click()
# driver.quit()
以上内容主要来自:https://blog.csdn.net/qq_49442278/article/details/116301468...
浏览更多内容请先登录。
立即注册
更新于:2024-03-18 22:27:55
|--转 selenium+python+Chrome自动化清理cookie
测试了,代码有问 20240318
selenium+python+Chrome自动化清理cookie_selenium 清除cookie-CSDN博客
第一次写,没啥经验,主要是作为笔记进行记录。
之前写爬虫因为使用 driver.delete_all_cookies() 清除cookie,清除得不干净,所以需要使用谷歌浏览器清理才行,但是谷歌浏览器里面的shadow-root导致无法找到点击对象,因此需要一层层地去找才行。代码如下:
def clear_cookie(self):
try:
url = 'chrome://settings/clearBrowserData'
self.driver.get(url)
time.sleep(2)
def expand_shadow_element(element):
shadow_root = self.driver.execute_script('return arguments[0].shadowRoot', element)
return shadow_root
self.driver.delete_all_cookies()
outer = expand_shadow_element(self.driver.find_element_by_css_selector("body > settings-ui"))
outer_2 = expand_shadow_element(outer.find_element_by_css_selector("#main"))
outer_3 = expand_shadow_element(outer_2.find_element_by_css_selector("settings-basic-page"))
outer_4 = expand_shadow_element(
outer_3.find_element_by_css_selector(
"#basicPage > settings-section:nth-child(8) > settings-privacy-page"))
outer_5 = expand_shadow_element(outer_4.find_element_by_css_selector("settings-clear-browsing-data-dialog"))
inner = outer_5.find_element_by_css_selector("#clearBrowsingDataConfirm")
inner.click()
except:
pass
...
浏览更多内容请先登录。
立即注册
更新于:2024-03-18 22:05:39
相关内容
PHP Error: Maximum execution time of 30 seconds exceeded 解决方案
PHP错误:SQLSTATE[HY000] [2054] The server requested authentica...
如何通过Chrome查看网站登录 Cookie 信息
mysql在导入大数据库的时候,报错 Unknown MySQL server host ... ER...
【PHP】COOKIE和SESSION的使用以及区别
推荐内容