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"]