我想得到以下元素,但我很难这样做。我已经通过课程,css_selector等尝试了
<a href="http://www.google.ca" target="_blank" class="btn visit__link">
"Visit this Webpage"
<br>
"for more content!"
</a>
<br>
<small>Opens in a new window.</small>
</div>
</section>
我已尝试过以下代码,但它似乎无法运作:
web = browser.find_element(By.cssSelector("a[class='btn visit__link']")).click()
答案 0 :(得分:1)
一种选择是按类别名称找到链接,如@Malik建议:
browser.find_element_by_class_name('visit__link')
或使用CSS选择器:
browser.find_element_by_css_selector('a.visit__link')
或者,您也可以通过部分链接文本找到链接:
browser.find_element_by_partial_link_text('Visit this Webpage')
您可能还需要wait 才能使按钮显示:
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
wait = WebDriverWait(browser, 10)
link = wait.until(EC.presence_of_element_located((By.PARTIAL_LINK_TEXT, "Visit this Webpage")))
link.click()
答案 1 :(得分:0)
试试这个选择器:
By.cssSelector("a[class*='visit__link']")