簡體   English   中英

如何在 python selenium 中找到元素的標題

[英]How to find the title of a element in python selenium

 <div> <div class="alk_dvImage"><a href="/products/"><img class="alk_prImg" src="https://a random photo" alt="a random product"></a> </div> <div class="product-score"></div> <a href="/products/" class="alk_prName alk_pr" title="Products Title">Strong Graphic Card </a> </div>

假設我們有一個如上所述的 html。 我想提取嵌套在 div 中的“a”元素的標題。 而且我也想要這個相同元素的 class 但是當我嘗試這段代碼時

browser.find_element_by_css_selector('a.alk_prName alk_pr')

這沒有任何反應。 順便說一句,我無法做任何事情來獲得一個元素。

怎么了?

您沒有在選擇器中按點鏈接類,請嘗試以下操作:

browser.find_element_by_css_selector('a.alk_prName.alk_pr').get_attribute("title")

例子:

from selenium import webdriver
browser = webdriver.Chrome('C:\Program Files\ChromeDriver\chromedriver.exe')

html_content = """
  <a href="/products/" class="alk_prName alk_pr" title="Products Title">Strong Graphic Card</a>
"""

browser.get("data:text/html;charset=utf-8,{html_content}".format(html_content=html_content))

browser.find_element_by_css_selector('a.alk_prName.alk_pr').get_attribute("title")

要打印title屬性的值,即Products Title ,您可以使用以下任一Locator Strategies

  • 使用css_selector

     print(driver.find_element(By.CSS_SELECTOR, "a.alk_prName.alk_pr[href='/products/']").get_attribute("title"))
  • 使用xpath

     print(driver.find_element(By.XPATH, "//a[@class='alk_prName alk_pr' and @href='/products/'][contains(., 'Strong Graphic Card')]").get_attribute("title"))

理想情況下,您需要為visibility_of_element_located()引入WebDriverWait ,並且您可以使用以下任一Locator Strategies

  • 使用CSS_SELECTOR

     print(WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.CSS_SELECTOR, "a.alk_prName.alk_pr[href='/products/']"))).get_attribute("value"))
  • 使用XPATH

     print(WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//a[@class='alk_prName alk_pr' and @href='/products/'][contains(., 'Strong Graphic Card')]"))).get_attribute("value"))
  • 注意:您必須添加以下導入:

     from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM