【问题标题】:Chrome stores cookies too late local in profile pathChrome 在配置文件路径中本地存储 cookie 太晚了
【发布时间】:2021-04-29 05:27:07
【问题描述】:

由于无法通过 webdriver.get_cookies() 获取所有 cookie(相同域和第 3 方 cookie),我决定读取 Cookies 文件 - 该文件以 SQLite 形式存储在用户配置文件路径中。

但奇怪的是,我刚刚看到 cookie 没有实时保存到这个文件中。我也不确定cookies的存储时间。我必须等待大约 10 秒钟,然后我才能在那里找到所有 cookie。 是否知道如何实时读取 selenium 网络驱动程序的所有 cookie?

【问题讨论】:

    标签: python selenium google-chrome selenium-webdriver cookies


    【解决方案1】:

    理想情况下,在收集和打印 cookie 之前,您需要为 visible 元素诱导 visibility_of_element_located() 的 WebDriverWait,然后按如下方式收集 :

    webdriver.get(url)
    WebDriverWait(webdriver, 20).until(EC.visibility_of_element_located((By.CSS_SELECTOR, "element_css")))
    print(webdriver.get_cookies())
    

    或者为 interactive 元素诱导WebDriverWait 为element_to_be_clickable(),然后按如下方式收集:

    webdriver.get(url)
    WebDriverWait(webdriver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "element_css")))
    print(webdriver.get_cookies())
    

    注意:您必须添加以下导入:

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-06
      • 2017-09-10
      • 1970-01-01
      • 1970-01-01
      • 2023-04-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-23
      相关资源
      最近更新 更多