Python 如何定位web元素(Xpath:多个条件)

Python 如何定位web元素(Xpath:多个条件),python,selenium,xpath,Python,Selenium,Xpath,我试图用XPath定位一个特定的元素(对于我在Python中使用Selenium模块处理的脚本)。我在网上查过,但找不到解决问题的方法,即: 有一个由许多“tr”组成的表。每个“tr”由共享同一类的两个“td”组成(即:“Zelle”)。我想找到一个满足两个条件的“tr”。首先,它必须在一个td中包含文本“auto”,然后在另一个td中包含文本“Abge”——最后,它必须包含类“Tabelle”的“a”元素 我写了这样的东西: ("//tr//td[@class='Zelle'][contain

我试图用XPath定位一个特定的元素(对于我在Python中使用Selenium模块处理的脚本)。我在网上查过,但找不到解决问题的方法,即:

有一个由许多“tr”组成的表。每个“tr”由共享同一类的两个“td”组成(即:“Zelle”)。我想找到一个满足两个条件的“tr”。首先,它必须在一个td中包含文本“auto”,然后在另一个td中包含文本“Abge”——最后,它必须包含类“Tabelle”的“a”元素

我写了这样的东西:

("//tr//td[@class='Zelle'][contains(.,'auto')]//following::td[@class='Zelle'][contains(.,'Abge')]//following::a[@class='Tabelle']")
但当我在开发者控制台中尝试时,我得到了所有包含“auto”的td的tr(即使第二个td不包含“Abge”)。如何编写只返回带有“auto”和“Abge”的tr的语句

示例HTML:

<tr>
<td class="Zelle">auto</td>
<td class="Zelle">Abge</td>
<td class="Zelle">Some characters</td>
<td class="Zelle">
<a class="Tabelle" href="blablahblah.aspx?xxxx=Number"></a></td>
</tr>
<tr>
<td class="Zelle">auto</td>
<td class="Zelle">Abge</td>
<td class="Zelle">Some characters</td>
<td class="Zelle">
<a class="Tabelle" href="blablahblah.aspx?xxxx=Number"></a></td>
</tr>
<tr>
<td class="Zelle">auto</td>
<td class="Zelle">Some text(but no "Abge")</td>
<td class="Zelle">Some characters</td>
<td class="Zelle">
<a class="Tabelle" href="blablahblah.aspx?xxxx=Number"></a></td>
</tr>
<tr>
<td class="Zelle">some text (but not "auto")</td>
<td class="Zelle">Abge</td>
<td class="Zelle">Some characters</td>
<td class="Zelle">
<a class="Tabelle" href="blablahblah.aspx?xxxx=Number"></a></td>
</tr>

汽车
阿贝格
一些人物
汽车
阿贝格
一些人物
汽车
一些文本(但没有“Abge”)
一些人物
一些文本(但不是“自动”)
阿贝格
一些人物

尝试使用下面的XPath

//tr[td[contains(., "auto")] and td[contains(., "Abge")] and .//a[@class="Tabelle"]]

你能分享同样的HTML样本吗?这听起来像一个简单的例子。编辑您的问题并询问实际问题,而不是寻求帮助解决问题。你想做什么?这是实际的问题-我应该使用什么来选择那些同时包含“auto”和“Abge”的“tr”(在属于同一tr的不同“td”中)。当我使用上面提到的xpath时,它会选择所有包含“auto”的td的'tr',即使第二个'td'不包含“Abge”。如果不起作用,我会按照你的建议,在问题中添加这个网站的示例代码。我能说什么-非常感谢!很好用!