当我调用driver.find_elements_by_class_name('radio')为什么尺寸不想显示?

时间:2017-10-18 10:16:07

标签: html python-3.x selenium web-scraping

当我尝试抓这个链接时

https://hbx.com/brands/reebok/club-c-85-1

当我打电话使用

driver.find_elements_by_class_name('radio') or driver.find_elements_by_class_name('hidden-xs') or driver.find_elements_by_class_name('form-control')

为什么我看不到尺码?我得到的就是这个。

[<selenium.webdriver.remote.webelement.WebElement (session="d8112720343cc58b0a17512f8cd83c7a", element="0.3067735208506053-494")>, <selenium.webdriver.remote.webelement.WebElement (session="d8112720343cc58b0a17512f8cd83c7a", element="0.3067735208506053-495")>, <selenium.webdriver.remote.webelement.WebElement (session="d8112720343cc58b0a17512f8cd83c7a", element="0.3067735208506053-496")>, <selenium.webdriver.remote.webelement.WebElement (session="d8112720343cc58b0a17512f8cd83c7a", element="0.3067735208506053-497")>, <selenium.webdriver.remote.webelement.WebElement (session="d8112720343cc58b0a17512f8cd83c7a", element="0.3067735208506053-498")>, <selenium.webdriver.remote.webelement.WebElement (session="d8112720343cc58b0a17512f8cd83c7a", element="0.3067735208506053-499")>, <selenium.webdriver.remote.webelement.WebElement (session="d8112720343cc58b0a17512f8cd83c7a", element="0.3067735208506053-500")>]

我的剧本

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()

#url target
driver.get("https://hbx.com/categories/sneakers")

#masuk link
driver.find_element_by_css_selector('a.picture').click()

#size/color
driver.find_elements_by_class_name('radio')

1 个答案:

答案 0 :(得分:0)

find_elements_by_class_name :返回WebElements的对象列表。而不是你感兴趣的文本.Text是WebElement的属性(虽然不是列表)

所以你可以这样做。

for elem in driver.find_elements_by_class_name('radio'): 
    print elem.text

如果只有一个元素匹配给定的类名,你可以简单地做这样的事情。

driver.find_element_by_class_name('radio').text