del*_*ain 3 python selenium xpath selenium-chromedriver selenium-webdriver
这是我的第一个问题,所以如果我错过了一些信息或做错了什么,我已经为此道歉。我正在使用 ChromeDriver 来浏览互联网。使用的语言是Python与Selenium的结合。
我有一个元素,它是一个跨度标签,我将其存储在名为elem的变量中。我可以找到elem的父元素
articles.append(elem.find_parent("a")['href'])
Run Code Online (Sandbox Code Playgroud)
它存储在该数组articles中。现在我需要找到祖先元素,它是带有“price”类的 span 标签:最低行代表elem,第二行是我正在寻找的元素。
但是,尝试像以前一样:
elem.find_parent("span")['class']
Run Code Online (Sandbox Code Playgroud)
对我来说不起作用,我收到一个 Nonetype 错误。我尝试了多种其他方法,但总是出现 NoneType 错误。
先感谢您。
Parent 选择当前节点的父节点。
让我们以 Stackoverflow 用户个人资料中的信誉元素为例:要使用XPATHspan向上一级:
//span[@class='grid--cell ']
你可以升级一级/..
//span[@class='grid--cell ']/..
Run Code Online (Sandbox Code Playgroud)
使用 XPATH parent:
//span[@class='grid--cell ']/parent::div[@class='grid gs8 fs-headline1']
Run Code Online (Sandbox Code Playgroud)
parent选择当前节点的父节点
使用 XPATHancestor
//span[@class='grid--cell ']/ancestor::div[@class='grid gs8 fs-headline1']
Run Code Online (Sandbox Code Playgroud)
不同之处在于,ancestor不仅选择当前元素的父元素,还选择祖父母等。
目前还没有一个好的方法可以对 CSS 执行相同的操作。
为了查找子元素,我通常将其用于//所有兄弟姐妹或/直接兄弟姐妹。
| 归档时间: |
|
| 查看次数: |
4779 次 |
| 最近记录: |