【问题标题】:Can find Class Name using Selenium Python可以使用 Selenium Python 找到类名
【发布时间】:2021-07-28 07:25:39
【问题描述】:

下面是在 selenium 中使用 page_source 方法的 HTML 的 sn-p。

为什么找不到className cell-content cell-colshopCapacity

'<div unselectable="on" class="x-grid-cell-inner" style="text-align:left;">Daily</div></td><td class="x-grid-cell x-grid-td x-grid-cell-templatecolumn-1065 x-grid-cell-last x-unselectable "><div unselectable="on" class="x-grid-cell-inner" style="text-align:left;"><span class="cell-content cell-colshopCapacity">101</span></div></td></tr></tbody></table></div></div></div><div class="x-container save x-container-default x-box-layout-ct" style="padding: 5px 15px 18px 9px; width: 907px;"

使用下面返回一个空列表[]

from selenium import webdriver

driver = webdriver.Chrome(r'path/to/chromedriver')
driver.find_elements_by_class_name('cell-content cell-colshopCapacity')

如果我在 vs 代码中使用driver.page_source,它会从网页返回 HTML,这就是我能够生成上述 sn-p 的方式。我是否正确假设如果driver.page_source返回带有所述类名的HTML,那么我应该能够使用下面的方法找到它,因为如果它在另一个frame中,那么它不会返回我正在尝试的类名找到?还是我的假设有误?

driver.find_elements_by_class_name('cell-content cell-colshopCapacity')

【问题讨论】:

  • 我对 selenium/webdriver 一无所知。但是,如果您知道如何获取 HTML,那么我建议您尝试使用 BeautifulSoup 来导航它

标签: python selenium


【解决方案1】:

类名不适用于 Selenium 中的空格。

所以尝试将其改为css_selector

driver.find_elements_by_css_selector('span.cell-content.cell-colshopCapacity')

【讨论】:

    猜你喜欢
    • 2020-09-26
    • 1970-01-01
    • 2014-08-08
    • 1970-01-01
    • 2020-02-10
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多