Python 如何单击与另一个字符串位于同一行的链接,我';你把它列在名单上了吗?

Python 如何单击与另一个字符串位于同一行的链接,我';你把它列在名单上了吗?,python,selenium,Python,Selenium,我想单击与复制到列表中的另一个链接/文本位于同一行的链接。最好的办法是什么 我想点击发票所在行的“编辑”按钮。我将所有发票复制到一个列表中,但我必须从每张发票中删除“发票”部分 谢谢你的帮助 编辑| ViewIDD2CustomerTripe代码事件日期发票发票销售订单发票条款发票类型余额 | 245950 基金 11/14/2019 订单号#0073 关于航运 该账户资金不足 476 | 3831 基金 11/14/2019 订单#0068 关于航运 该账户资金不足 1,027.18

我想单击与复制到列表中的另一个链接/文本位于同一行的链接。最好的办法是什么

我想点击发票所在行的“编辑”按钮。我将所有发票复制到一个列表中,但我必须从每张发票中删除“发票”部分

谢谢你的帮助


编辑| ViewIDD2CustomerTripe代码事件日期发票发票销售订单发票条款发票类型余额
| 
245950
基金
11/14/2019
订单号#0073
关于航运
该账户资金不足
476
| 
3831
基金
11/14/2019
订单#0068
关于航运
该账户资金不足
1,027.18
编辑|查看IDID2客户Tripe代码事件日期发票销售订单发票条款发票类型余额

我想说,如果您想根据发票id单击,您应该正确地知道发票id,或者至少知道发票id的一部分,例如:INV10。因此,您需要围绕它构建xpath,如下所示

"//tr[ .//a[contains(text(),'INV10')]]//a[contains(@class, 'edititem')]"
xpath
//tr[.//a[contains(text(),'INV10')]
表示查找具有包含INV10文本的子代锚点的tr

但是如果你想让它是动态的,比如说它总是有INV+的东西,你可以在那里构造字符串并根据需要追加

String dummyVar = 10;
"//tr[ .//a[contains(text(),'INV"+dummyVar +"')]]//a[contains(@class, 'edititem')]"
对不起,我不熟悉phyton,但应该可以理解

编辑:我假设id是INV10,但当我查看时,您有id列。因此,如果id列是发票id,那么您可以这样做

"//tr[ .//td[contains(text(),'245950')]]//a[contains(@class, 'edititem')]"

只是一个警告,如果您能够在id的td中至少放置一个类,以便更准确地查找它,并且在xpath中发现两个元素重合的情况下更健壮,那么您似乎希望根据特定的
\INV
编号单击
编辑
,尝试以下
xpath

//tr[contains(.,"#INV10")]//td//a[text()="Edit"]

尝试将
#INV10
更改为
#INV20
,然后查看结果。

我不确定是否正确理解了问题。是否要使用selenium单击它?如果使用selenium可以找到元素,即xpath://tr[@id='row0']//a[contains(@class,'edititem')的顶行,然后单击i,是的,我想使用selenium单击它。我会尝试这种方法,但它并不总是排在第一行。我需要它与发票ID在同一行。但是,感谢您花时间帮助我!