iT邦幫忙

0

python selenium 的 find_element_by_xpath 搞不定

網頁的片段是:

<form name="form1" method="post" action="?cz=del&wbid=7683290543&zjt=aaa&lx=CNAME&xl=%C4%AC%C8%CF&fs=" onSubmit="return b_ifsf('delete?');" id="form1">
<td style="width:120px">
    <input type="hidden" name="ip" value="aaa.xxx.com.a.bdydns.com." >
    <input type="submit" name="rpt$btnDelete" value="delete" />
</td>
</form>
<form name="form1" method="post" action="?cz=del&wbid=2324242122&zjt=bbb&lx=CNAME&xl=%C4%AC%C8%CF&fs=" onSubmit="return b_ifsf('delete?');" id="form1">
<td style="width:120px">
    <input type="hidden" name="ip" value="bbb.xxx.com.a.bdydns.com." >
    <input type="submit" name="rpt$btnDelete" value="delete" />
</td>
</form>
<form name="form1" method="post" action="?cz=del&wbid=2324242553&zjt=ccc&lx=CNAME&xl=%C4%AC%C8%CF&fs=" onSubmit="return b_ifsf('delete?');" id="form1">
<td style="width:120px">
    <input type="hidden" name="ip" value="ccc.xxx.com.a.bdydns.com." >
    <input type="submit" name="rpt$btnDelete" value="delete" />
</td>
</form>

要按第二個的 "删除" 指令要如何寫 ?

vsu91267 iT邦新手 5 級 ‧ 2018-12-03 09:08:07 檢舉
想直接看答案的話 可以
開啟chrome ->按F12-->Ctrl+Shift+C-->點選元素-->在反白的地方按右鍵-->copy-->copy xpath-->貼上
echochio iT邦高手 1 級 ‧ 2018-12-03 13:06:50 檢舉
hi wsu91267 您知道xpath 會複製到什麼嗎?
執行結果是沒有參照,固定是選第二項,這,,,
如果我的cname 有十個,那每次都刪除第二項,這樣我就不必寫程式來判斷了
echochio iT邦高手 1 級 ‧ 2018-12-07 09:09:25 檢舉
搞定了 ... 跑去 stackoverflow 上發問有人回了 ...
原來是用 : following::input
driver.find_element_by_xpath('//input[contains(@value, "ddd.XXX.com.a.bdydns.com.")]//following::input[1]').click()

尚未有邦友回答

立即登入回答