如何在 selenium python 中使用 XPATH 获取图像的 src

how to get src of image using XPATH in selenium python

嗨,我需要在 selenium 中使用 XPATH 的图像 src

src.getAttribute("src")
img-src= driver.find_elements_by_xpath("//img[contains(@class,'_3me- _3mf1 img')]")
x=img-src.getAttribute("src")
print(x)

页面所有图片的src

find_elements 将 return 列出所以使用 find_element.

imgsrc= driver.find_element_by_xpath("//img[contains(@class,'_3me- _3mf1 img')]")
x=imgsrc.get_attribute("src")
print(x)

或者如果你想使用 find_elements 试试这个。

imgsrc= driver.find_elements_by_xpath("//img[contains(@class,'_3me- _3mf1 img')]")
for ele in imgsrc:
  x=ele.get_attribute("src")
  print(x)

根据您的代码试验,您可能正在尝试打印具有 class 属性的 <img> 元素的 src 属性作为 _3me- , _3mf1img。但是 class 属性 _3me-_3mf1 不是 static 而是动态生成的。因此,作为最接近的赌注,您可以使用以下任一 :

  • CSS_SELECTOR:

    print([ele.get_attribute("src") for ele in WebDriverWait(driver, 30).until(EC.visibility_of_all_elements_located((By.CSS_SELECTOR, "img.img")))])
    
  • XPATH:

    print([ele.get_attribute("src") for ele in WebDriverWait(driver, 30).until(EC.visibility_of_all_elements_located((By.XPATH, "//img[contains(@class, 'img')]")))])