gpt4 book ai didi

IE 中的 Python webdriver 为所有 find_elements 返回 None

转载 作者:行者123 更新时间:2023-11-28 20:16:23 26 4
gpt4 key购买 nike

我正在使用 Python 中最新版本的 Selenium 2 开发测试,使用 pip install -U selenium 安装。我有一系列测试可以使用 webdriver.Firefox() 正确运行,但不能使用 webdriver.Ie()。它打开并正确导航到页面,但任何访问该页面中元素的尝试都会失败。在其他页面中似乎没有问题,但我无法确定是什么导致了我的问题。

我可以通过构建 webdriver 实例轻松地生成问题:

from selenium import webdriver
browser = webdriver.Ie()
browser.get("page url")
browser.find_elements_by_tag_name("html") #returns None!

我正在寻找任何关于为什么会这样的线索。

最佳答案

如果您正是使用这段代码,肯定会出现一些问题。

首先,我觉得最好把find的返回值赋值给一个变量,然后再检查它的值;我的意思是 html_tags = browser.find_elements_by_tag_name("html")

在那之后,我认为你应该使用 browser.find_element_by_tag_name("html");因为每一页只有一个名为“html”的标签。如果您想获得名称为“html”的所有标记元素,则您的代码是正确的。

最后我认为你想要访问页面源代码;在这种情况下,您应该使用其中之一:

  1. html_text = browser.find_element_by_tag_name("html").text
  2. html_text = browser.find_elements_by_tag_name("html")[0].text

为了涵盖所有州,您能否告诉我您尝试访问的 URL 是什么?因为我用你的代码尝试了多个网页(完全是你的,不是我自己编辑的),一切都很好。

关于IE 中的 Python webdriver 为所有 find_elements 返回 None,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7065829/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com