如何单击与我已制作成列表的另一个字符串在同一行中的链接?



我想点击与复制到列表中的另一个链接/文本位于同一行的链接。对此,最好的方法是什么?

我想点击与发票同一行的"编辑"按钮。我把所有发票都复制到一个列表中,但我不得不从每张发票中删除"发票#"部分。

谢谢你的帮助!

<table id="div__bodytab" border="0" cellspacing="0" cellpadding="0" width="100%" style="">
<tbody><tr class="printonly"><td height="0" id="div__labprintcol1" nowrap="" class="listheadertdleft listheadertextb uir-list-header-td uir-list-header-align-ctr"><div class="listheader">Edit | View</div></td><td height="0" id="div__labprintcol2" nowrap="" class="listheadertd listheadertextb uir-list-header-td uir-list-header-align-rt"><div class="listheader">ID<span class="listheadersort"></span></div></td><td height="0" id="div__labprintcol3" nowrap="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">ID2<span class="listheadersort"></span></div></td><td height="0" id="div__labprintcol4" nowrap="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">Customer<span class="listheadersort"></span><img class="uir-hover-icon" src="/images/hover/icon_hover.png?v=2019.2.0" alt="" border="0" style="vertical-align:middle;" title="This column is hoverable"></div></td><td height="0" id="div__labprintcol5" nowrap="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">Stripe Code&nbsp;<span class="listheadersortup"></span><span class="uir-list-header-sort-padding-after" style="padding-right:10px;"></span></div></td><td height="0" id="div__labprintcol6" nowrap="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">Event Date<span class="listheadersort"></span></div></td><td height="0" id="div__labprintcol7" nowrap="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">Invoice<span class="listheadersort"></span><img class="uir-hover-icon" src="/images/hover/icon_hover.png?v=2019.2.0" alt="" border="0" style="vertical-align:middle;" title="This column is hoverable"></div></td><td height="0" id="div__labprintcol8" nowrap="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">Invoice Sales Order<span class="listheadersort"></span></div></td><td height="0" id="div__labprintcol9" nowrap="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">Invoice Terms<span class="listheadersort"></span></div></td><td height="0" id="div__labprintcol10" nowrap="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">Event Type<span class="listheadersort"></span></div></td><td height="0" id="div__labprintcol11" nowrap="" class="listheadertd listheadertextb uir-list-header-td uir-list-header-align-rt"><div class="listheader">Balance<span class="listheadersort"></span></div></td></tr>
<tr class="uir-list-row-tr uir-list-row-even" id="row0">
<td valign="top" class="listtextctr uir-list-row-cell" nowrap="" style=""><a class="dottedlink edititem" href="/app/common/custom/custrecordentry.nl?rectype=176&amp;id=214433&amp;e=T" xpath="1">Edit</a>&nbsp;|&nbsp;<a class="dottedlink viewitem" href="/app/common/custom/custrecordentry.nl?rectype=176&amp;id=214433">View</a></td>
<td valign="top" class="listtextrt uir-list-row-cell" style=""><a href="/app/common/custom/custrecordentry.nl?rectype=176&amp;id=214433" target="_self" class="dottedlink">214433</a></td>
<td valign="top" class="listtext uir-list-row-cell" style="">245950</td>
<td valign="top" class="listtext uir-list-row-cell" style=""><a href="/app/common/entity/custjob.nl?id=7426843" class="dottedlink uir-hoverable-anchor" style="cursor:pointer;" id="qsTarget_1237261608" onmouseover="var win = (typeof parent.getExtTooltip != 'undefined' &amp;&amp; parent.getExtTooltip) ? parent : window;  if (typeof win.getExtTooltip != 'undefined')var tip = win.getExtTooltip('qsTarget_1237261608', 'CUSTOMER', 'DEFAULT_TEMPLATE', 7426843,null);if(tip != undefined) tip.onTargetOver(event);">Salads &amp; Wraps</a></td>
<td valign="top" class="listtext uir-list-row-cell" style="">funds</td>
<td valign="top" class="listtext uir-list-row-cell" style="">11/14/2019</td>
<td valign="top" class="listtext uir-list-row-cell" style=""><a href="/app/accounting/transactions/transaction.nl?id=13881996" class="dottedlink uir-hoverable-anchor" style="cursor:pointer;" id="qsTarget_720078194" onmouseover="var win = (typeof parent.getExtTooltip != 'undefined' &amp;&amp; parent.getExtTooltip) ? parent : window;  if (typeof win.getExtTooltip != 'undefined')var tip = win.getExtTooltip('qsTarget_720078194', 'transaction', 'TRAN_TEMPLATE', 13881996,null);if(tip != undefined) tip.onTargetOver(event);">Invoice #INV10</a></td>
<td valign="top" class="listtext uir-list-row-cell" style="">Order #0073</td>
<td valign="top" class="listtext uir-list-row-cell" style="">On Shipping</td>
<td valign="top" class="listtext uir-list-row-cell" style="">The account has insufficient funds </td>
<td valign="top" class="listtextrt uir-list-row-cell" style="">476.00</td>
</tr>
<tr class="uir-list-row-tr uir-list-row-odd" id="row1">
<td valign="top" class="listtextctr uir-list-row-cell" nowrap="" style=""><a class="dottedlink edititem" href="/app/common/custom/custrecordentry.nl?rectype=176&amp;id=214502&amp;e=T">Edit</a>&nbsp;|&nbsp;<a class="dottedlink viewitem" href="/app/common/custom/custrecordentry.nl?rectype=176&amp;id=214502">View</a></td>
<td valign="top" class="listtextrt uir-list-row-cell" style=""><a href="/app/common/custom/custrecordentry.nl?rectype=176&amp;id=214502" target="_self" class="dottedlink">214502</a></td>
<td valign="top" class="listtext uir-list-row-cell" style="">3831</td>
<td valign="top" class="listtext uir-list-row-cell" style=""><a href="/app/common/entity/custjob.nl?id=8650625" class="dottedlink uir-hoverable-anchor" style="cursor:pointer;" id="qsTarget_193242182" onmouseover="var win = (typeof parent.getExtTooltip != 'undefined' &amp;&amp; parent.getExtTooltip) ? parent : window;  if (typeof win.getExtTooltip != 'undefined')var tip = win.getExtTooltip('qsTarget_193242182', 'CUSTOMER', 'DEFAULT_TEMPLATE', 8650625,null);if(tip != undefined) tip.onTargetOver(event);">Bbq and Pizzeria </a></td>
<td valign="top" class="listtext uir-list-row-cell" style="">funds</td>
<td valign="top" class="listtext uir-list-row-cell" style="">11/14/2019</td>
<td valign="top" class="listtext uir-list-row-cell" style=""><a href="/app/accounting/transactions/transaction.nl?id=13552039" class="dottedlink uir-hoverable-anchor" style="cursor:pointer;" id="qsTarget_150766952" onmouseover="var win = (typeof parent.getExtTooltip != 'undefined' &amp;&amp; parent.getExtTooltip) ? parent : window;  if (typeof win.getExtTooltip != 'undefined')var tip = win.getExtTooltip('qsTarget_150766952', 'transaction', 'TRAN_TEMPLATE', 13552039,null);if(tip != undefined) tip.onTargetOver(event);">Invoice #INV20</a></td>
<td valign="top" class="listtext uir-list-row-cell" style="">Order #0068</td>
<td valign="top" class="listtext uir-list-row-cell" style="">ACH on Shipping</td>
<td valign="top" class="listtext uir-list-row-cell" style="">The account has insufficient funds</td>
<td valign="top" class="listtextrt uir-list-row-cell" style="">1,027.18</td>
</tr>
<tr class="noprint uir-noprint-list-end" style="visibility: hidden;"><td height="0" id="div__labcol1" nowrap="" class="listheadertdleft listheadertextb uir-list-header-td uir-list-header-align-ctr"><div class="listheader">Edit | View</div></td><td height="0" id="div__labcol2" nowrap="" class="listheadertd listheadertextb uir-list-header-td uir-list-header-align-rt"><div class="listheader">ID<span class="listheadersort"></span></div></td><td height="0" id="div__labcol3" nowrap="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">ID2<span class="listheadersort"></span></div></td><td height="0" id="div__labcol4" nowrap="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">Customer<span class="listheadersort"></span><img class="uir-hover-icon" src="/images/hover/icon_hover.png?v=2019.2.0" alt="" border="0" style="vertical-align:middle;" title="This column is hoverable"></div></td><td height="0" id="div__labcol5" nowrap="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">Stripe Code&nbsp;<span class="listheadersortup"></span><span class="uir-list-header-sort-padding-after" style="padding-right:10px;"></span></div></td><td height="0" id="div__labcol6" nowrap="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">Event Date<span class="listheadersort"></span></div></td><td height="0" id="div__labcol7" nowrap="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">Invoice<span class="listheadersort"></span><img class="uir-hover-icon" src="/images/hover/icon_hover.png?v=2019.2.0" alt="" border="0" style="vertical-align:middle;" title="This column is hoverable"></div></td><td height="0" id="div__labcol8" nowrap="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">Sales Order<span class="listheadersort"></span></div></td><td height="0" id="div__labcol9" ="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">Invoice Terms<span class="listheadersort"></span></div></td><td height="0" id="div__labcol10" nowrap="" class="listheadertd listheadertextb uir-list-header-td"><div class="listheader">Event Type<span class="listheadersort"></span></div></td><td height="0" id="div__labcol11" nowrap="" class="listheadertd listheadertextb uir-list-header-td uir-list-header-align-rt"><div class="listheader">Balance<span class="listheadersort"></span></div></td></tr>
</tbody></table>

我想说,如果你想根据发票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 找到了重合的2个元素的情况下也更健壮

您似乎想要根据特定的#INV编号单击Edit,请尝试以下xpath:

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

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

相关内容

最新更新