【问题标题】:Selenium Python: delete_all_cookies() is not deleting all the cookies storedSelenium Python:delete_all_cookies() 不会删除所有存储的 cookie
【发布时间】:2018-12-02 00:40:40
【问题描述】:

有这个网站:http://justnotepad.com/ 在这里我们可以写笔记,它会将它存储在浏览器的存储中,所以如果我们再次重新加载/重新打开页面,它会恢复以前的笔记。

所以我想在同一个浏览器实例中打开这个网站 3 次,而不是通过打开和关闭新标签来关闭它。 在标签的关闭和打开之间执行browser.delete_all_cookies()。 但该网站仍然能够获取以前的笔记。

以下代码在每次加载邮件地址更改后适用于http://temp-mail.org。这意味着 cookie 将被删除。但不明白为什么它不适用于http://justnotepad.com/

我的完整代码:

browser = webdriver.Chrome(chrome_options=chrome_options,executable_path=cpath)
for i in range(2):

    browser.get('http://justnotepad.com')
    t=browser.find_element_by_xpath('//div[@id="editable_text_box"]/textarea[@name="editable_text"][@id="editable_text"]')

    t.send_keys(Keys.ENTER + "This is a new line")

    '''
    browser.get("https://temp-mail.org")
    print(len(browser.window_handles))
    #print(browser.get_cookie('mail'))
    eid=browser.find_element_by_xpath('//input[@id="mail"]').get_attribute('value')
    print(eid)
    '''
    print("current:",browser.current_window_handle)
    browser.execute_script("window.open('', 'new_tab')")
    print(len(browser.window_handles))
    next_tab=browser.window_handles[len(browser.window_handles)-1]
    print(next_tab)
    print(browser.title)
    browser.delete_all_cookies()
    #browser.delete_cookie('mail')
    browser.close()
    print(len(browser.window_handles))

    browser.switch_to_window(next_tab)

【问题讨论】:

    标签: python-3.x selenium-webdriver selenium-chromedriver webautomation


    【解决方案1】:

    我知道这很旧,但是就像您注入 cookie 并刷新页面以供它们加载一样,删除也是如此。 尝试刷新页面,看看是否有所不同。

    driver.refresh()
    time.sleep(seconds)  # Wait for it to load
    

    【讨论】:

      【解决方案2】:

      在这种情况下,信息不会存储在 cookie 中。它在浏览器的本地存储中。

      显示:

      1. 浏览至http://justnotepad.com/
      2. 打开开发工具 (F12)
      3. 使用“应用程序”选项卡
      4. 点击本地存储
      5. 点击justnotepad.com叶子
      6. 在记事本中写一些东西。
      7. 注意键和值的抽动。
      8. 删除注释。观察键和值的变化。

      【讨论】:

      • 我不认为这是解决 OP 的问题,因为他使用 selenium 来自动化该过程,他需要一个可以执行相同操作的编码解决方案。也许您可以提供一个代码来删除本地存储中的数据存储?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-06-20
      • 2013-04-14
      • 1970-01-01
      • 2023-03-24
      • 1970-01-01
      • 1970-01-01
      • 2020-12-27
      相关资源
      最近更新 更多