我有以下代码:使用类标记a" keep-product-list-cache"并使用class" promotion-tag grey"标记div。在class =" product-wrapping"下的标签div下面。
我想在课堂上获得数据代码(1017534)" image"在标记a下,来自span class的相对位置="内容tc"在标签div下面加上" promotion-tag grey"。
<div class="product-wrapping">
<a class="keep-product-list-cache" href="/product/peach-gum-black-sugar-longan-tea-1017534-c2843">
<div class="image">
<img src="https://tore.com/images/tore/production/product/160px/1017534_1.jpg?1511440192" data-code="1017534" alt="tea">
</div>
</a>
<div class="promotion-tag grey">
<span class="edge"></span>
<span class="content tc">Sold Out</span>
<span class="triangle"></span>
</div>
我已尝试以下方式按父/兄弟位置进行定位,但它不起作用:
id = driver.find_elements_by_xpath('div[@class="promotion-tag grey"]//span[@class="content tc"]/..//preceding-sibling::a//div[@class="image"]//img')
获取属性:id[i].get_attribute("data-code")
但是返回列表的长度&#34; id&#34;是0.有什么想法吗?提前谢谢!
答案 0 :(得分:1)
喔。唯一的错误是你在表达式的开头忘了//
。
id = driver.find_elements_by_xpath('//div[@class="promotion-tag grey"]//span[@class="content tc"]/..//preceding-sibling::a//div[@class="image"]//img')
答案 1 :(得分:0)
根据HTML在<a>
标记下的 1017534 中获取数据代码( 1017534 )来自span {{1}的相对位置在标签div下使用类 promotion-tag grey ,您可以使用以下代码行:
class="content tc"