解决Selenium中用find_elements_by_xpath()无法获取属性值问题

首先现在Selenium的版本升级,现在查找页面元素的方法都会被显示横线,例如:

我们应该使用以下的写法:

(先导入By模块)

from selenium.webdriver.common.by import By

value中就是输入我们想要查找的元素即可!

今天我刚好使用selenium的xpath的方法提取属性值,我发现找不到对应的属性值,平常我是这样写的:

yanzhengma_image=driver.find_elements(by=By.XPATH, value='/html/body/form[1]/div[4]/div[4]/img/@src')

结果出现错误:大概意思是说列表存放的是element而不是object。

我就没有@属性值,只找到它的标签级img,然后通过.get_attribute(“src”)这个方法获取我想要的src!(当然其他属性值也同样适用了)!

代码示例如下:

yanzhengma_image=driver.find_elements(by=By.XPATH, value='/html/body/form[1]/div[4]/div[4]/img')
yanzhengma_image=yanzhengma_image[0].get_attribute("src")#这里的[0],是提取列表的第一个元素
print(yanzhengma_image)

这样就可以得到我们想要的字符串了

***************************************************如有错误,敬请指正************************************

来源:漂泊的小森

物联沃分享整理
物联沃-IOTWORD物联网 » 解决Selenium中用find_elements_by_xpath()无法获取属性值问题

发表评论