<a href="#" onclick="showZone("gaoland.net")">gaoland.net</a>
我想點擊 onclick 中的鏈接。
我正在使用 python 硒。謝謝
我已經測驗了所有這些但沒有成功
browser.find_element_by_xpath('//href[text()="gaoland.net"]').click()
browser.find_element_by_xpath('//a[@href="#"]').click()
browser.find_element_by_xpath('//a[contains(@href,"#")]').click()
browser.find_element_by_xpath("//a[contains(@onclick, "'showZone("gaoland.net")'")]").click()
browser.find_element_by_partial_link_text("gaoland.net" Keys.RETURN)
browser.find_element_by_xpath("//a[con**strong text**tains(@onclick, '#')]").click()
browser.find_element_by_xpath('//a[contains(@href,"showZone("gaoland.net")")]').click()
browser.find_element_by_partial_link_text('showZone("gaoland.net")').click()
browser.find_element_by_xpath('//a[contains(@onclick="showZone("gaoland.net")]').click()
uj5u.com熱心網友回復:
首選方式是LINK_TEXT:
browser.find_element_by_link_text('gaoland.net').click()
或使用WebDriverWait:
WebDriverWait(browser, 20).until(EC.element_to_be_clickable((By.LINK_TEXT, "gaoland.net"))).click()
進口:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
如果這不起作用,請嘗試 xpath 或 css 選擇器:
路徑:
//a[contains(@onclick,'showZone') and text()='gaoland.net']
或者
//a[contains(@onclick,'showZone')]
css將是:
a[onclick^='showZone']
您可以使用使用driver.find_element_by_xpath('')或
WebDriverWait(browser, 20).until(EC.element_to_be_clickable((By.XPATH, "//a[contains(@onclick,'showZone')]"))).click()
PS:請檢查dev tools(谷歌瀏覽器)我們是否有唯一的條目HTML DOM。
檢查步驟:
Press F12 in Chrome- >去element節- >做一個CTRL F- >再貼上xpath看看,如果你需要的element是越來越強調與1/1匹配的節點。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/313849.html
