Python Selenium:逐个元素地获取并转换为文本

时间:2016-04-18 19:24:44

标签: python selenium text

我无法从以下页面获取文本元素(“1,028 Sales”):https://www.etsy.com/shop/susansimonini?ref=l2-shopheader-name

我可以使用它来获取元素本身没有问题:

driver.find_element_by_class_name('shop-sales') 

但我无法将其转换为文字。以下结果为空白行:

sales=driver.find_element_by_class_name('shop-sales').text
print sales

我做错了什么?在此先感谢您的帮助。

约什

1 个答案:

答案 0 :(得分:1)

.text返回一个空字符串,因为隐藏了目标元素。 因此,您可以定位具有销售计数的可见项:

text = driver.find_element_by_css_selector(".shop-info .shop-location + span").text

或者您可以直接获取innerHTMLtextContent属性:

text = driver.find_element_by_css_selector(".shop-sales").get_attribute("textContent")
text = driver.find_element_by_css_selector(".shop-sales").get_attribute("innerHTML")