我刚开始使用硒,但我有一个问题,可能答案很简单,但我在任何地方都找不到。当我写一个代码来找到这样的元素时:
options = Options()
options.binary_location="C:ProgramFilesGoogleChromeApplicationchrome.exe"
driver = webdriver.Chrome(chrome_options=options,executable_path=r"C:UsersuserDesktopchromedriver")
driver.get("https://eksisozluk.com/galatasaray--33210")
comments = driver.find_elements(By.CSS_SELECTOR,'div.content')
time.sleep(10)
for comment in comments:
print(comment.text)
我得到的结果是:
'dict'对象没有属性'text'
如何解决此问题?
driver.find_element
方法返回一个web元素对象。实际上,它是指向网页上实际web元素的指针
如果要获取元素文本,则必须在收到的web元素上应用相应的方法。类似这样的东西:
the_element_text = driver.find_element(By.CLASS_NAME, element_class_name).text
UPD
如果有多个web元素,您可以获得所有相关元素的列表,然后在该列表上迭代提取它们的文本,如下所示:
comments = driver.find_elements(By.CSS_SELECTOR,'div.content')
for comment in comments:
print(comment.text)
不要忘记在获取所有这些元素之前添加一个等待。