我在python中使用selenium来抓取一个用angular js设计的网页,因此对于id等元素没有健壮的标识符。我完全依赖CSS选择器(动态的)和XPath
我有以下代码-
<div class="dpm-form-row ng-star-inserted">
<dpm-input-number class="flex-6">
<dpm-input-label>
<label>Fixed Rate</label>
</dpm-input-label>
<dpm-input-number-bare>
<input size="1" type="text" placeholder="" class="ng-pristine ng-valid ng-touched">
</dpm-input-number-bare>
</dpm-input-number>
<div class="flex-6">
</div>
</div>
它基本上是一个名为“固定利率”的标签,后跟一个输入文本框。我想抓住的就是那个盒子
我已使用以下代码成功获取标签,但在使用父/同级逻辑获取框时遇到问题-
element = driver.find_element_by_xpath('//*[contains(text(),"Fixed Rate")]')
从你的preceding问题发回。原始解决方案:
3使用
following-sibling
轴的XPath:3对
input
元素使用preceding-sibling
轴和多个contains
的XPath:4使用
preceding
轴的XPath:相关问题 更多 >
编程相关推荐