xpath上去父母,然后回到孩子
<div class="classA"> <label class="classB"> <span>Referral Date</span> </label> <div> <input class="classC"> </div> </div>
我正在使用xpath来抓取'推荐date'。 这是一个要求,因为用户将传递这个人类可读标签给我。 我知道如何到达那里:
//div/label[@class="classB"]/span[text()="Referral Date"]
现在,我需要访问input[@ class =“classC”],以在我的WebDriver自动化中点击它。 我可以做这样的事吗?
//div/label[@class="classB"]/span[text()="Referral Date"] /parent::div/div/input[@class="classC"]
那么,这不适合我。
我也试过这个没成功:
//div/label[@class="classB"]/span[text()="Referral Date"] /following-sibling::div/input[@class="classC"]
没有工作,我不认为它可以因为跟随兄弟姐妹只是指内的节点。 对?
span的父级是标签,而不是div。 试试这些
//div/label[@class="classB"]/span[text()="Referral Date"]/ancestor::div[@class="classA"]//input[@class="classC"] //div/label[@class="classB"]/span[text()="Referral Date"]/parent::label/parent::div//input[@class="classC"] //div/label[@class="classB"]/span[text()="Referral Date"]/parent::label/following-sibling::div/input[@class="classC"]
在XPath
下面尝试匹配所需的input
:
//div/label[@class="classB"]/span[text()="Referral Date"]/following::input[@class="classC"]