我正在使用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!
我正在寻找任何可能出现这种情况的线索。
答案 0 :(得分:0)
如果您正在使用此代码,则绝对存在一些问题。
首先,我认为最好将find的返回值赋给变量然后检查它的值;我的意思是html_tags = browser.find_elements_by_tag_name("html")
。
在那之后,我瘦你应该使用browser.find_element_by_tag_name("html")
;因为每个页面只有一个名为“html”的标签。如果要实现名称为“html”的所有标记元素,则代码为true。
最后我想你想访问页面源码;在这种情况下,您应该使用以下其中一个:
html_text = browser.find_element_by_tag_name("html").text
html_text = browser.find_elements_by_tag_name("html")[0].text
只是为了涵盖所有州,您能否告诉我您尝试访问的URL是什么;因为我用你的代码尝试了多个网页(完全是你自己的,而不是我自己的编辑后),一切都很好。