我正在使用Python、selenium-webdriver、IE、xpath和css从互联网上获取一些报告。问题是该网站有两个html元素:
<html></html>
<html lang="en"></html>
我知道我感兴趣的元素存在于第一个html块中。然而,网络驱动程序不";参见";第一个html元素。我可以访问这个第二html lang="lang"的元素;en";通过css或xpath都没有问题,但是对第一个html元素的每个findelements_by_path/findelements_by-cs_selector查询都返回空列表。
如何引用第一个html元素?
我试过了:
driver.find_elements_by_css_selector('html:nth-of-type(1)')
我试过这个:
driver.find_elements_by_xpath('html[1]')
我也试过这个:
driver.find_elements_by_css_selector('html:not([lang="en"])')
但这两个都不起作用,都返回了一个空列表。
如果你正在寻找第一个,你必须记住,它们是基于0-索引的:
driver.find_elements_by_xpath('html[0]')
但问题可能是,html被认为是根元素。由于有两个根元素,它可能不起作用。