我正在使用python进行抓取,我需要保存图像标题(当您将鼠标悬停在图像上时弹出的文本)。这是我到目前为止的尝试:
from selenium import webdriver
driver= webdriver
imageTitle= driver.find_elements_by_xpath("//td[2]/div/img").title.encode('utf8')
当我尝试运行代码时,我得到AttributeError: 'list' object has no attribute 'title'
。我也试过了:
imageTitle= driver.find_elements_by_xpath("//td[2]/div/img").text.encode('utf8')
这只是更改为AttributeError: 'list' object has no attribute 'text'
我确信这是一个相对简单的修复方法,但我完全不知道如何做到这一点,谢谢
答案 0 :(得分:2)
由于您使用的是find_elements_by_xpath
,而不是find_element_by_xpath
,请注意您的复数为elements
,而另一个为element
。
driver.find_elements_by_xpath
将返回元素列表,text
是单个元素的属性。您需要使用find_element_by_xpath
或索引find_elements_by_xpath
。
AttributeError: 'list' object has no attribute 'text'
清楚告诉过你。
此外,你所说的标题是元素的属性,所以需要这个
imageTitle= driver.find_element_by_xpath("//td[2]/div/img").get_attribute("title")
Here是API文档,请在编码时仔细阅读。