ro.*_*o.e 7 python selenium xpath lxml html-parsing
我正在使用selenium,我需要找到一些selenium web元素的XPath.
例如:
import selenium.webdriver
driver = selenium.webdriver.Firefox()
element = driver.find_element_by_xpath(<some_xpath>)
elements = element.find_elements_by_xpath(<some_relative_xpath>)
for e in elements:
print e.get_xpath()
Run Code Online (Sandbox Code Playgroud)
我知道我无法从元素本身获取XPath,但是还有一种很好的方法来获取它吗?
我试着使用lxml的解析HTML,但它不承认的XPath,<some_xpath>我过去了,尽管driver.find_element_by_xpath(<some_xpath>) 没有设法找到该元素.
lxml可以使用方法为您自动生成绝对 xpath getpath().
示例(使用维基百科主页,获取徽标的xpath表达式):
import urllib2
from lxml import etree
data = urllib2.urlopen("https://en.wikipedia.org")
tree = etree.parse(data)
element = tree.xpath('//div[@id="p-logo"]/a')[0]
print tree.getpath(element)
Run Code Online (Sandbox Code Playgroud)
打印:
/html/body/div[4]/div[2]/div[1]/a
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5725 次 |
| 最近记录: |