繁体   English   中英

Python硒webdriver。 查找具有指定类名的元素

[英]Python selenium webdriver. Find elements with specified class name

我正在使用Selenium来解析包含标记的页面,该标记看起来像这样:

<html>
    <head><title>Example</title></head>
    <body>
        <div>
            <span class="Fw(500) D(ib) Fz(42px)">1</span>
            <span class="Fw(500) D(ib) Fz(42px) Green XYZ">2</span>
        </div>
    </body>
</html>

我想获取包含类foobar的所有span元素。

我已经尝试过这两种方法(变量wd是selenium.webdriver的实例):

elem = wd.find_elements_by_css_selector("span[class='Fw(500) D(ib) Fz(42px).']")

elem = wd.find_element_by_xpath("//span[starts-with(@class, 'Fw(500) D(ib) Fz(42px))]")

没有任何工作。

如何只选择以Fw(500) D(ib) Fz(42px)开头的元素

即两个跨度元素在给定的样本标记中。

尝试如下:-

elem = wd.find_elements_by_css_selector("span.foobar")

如果foobar类之间有空格,请尝试如下操作:-

elem = wd.find_elements_by_css_selector("span.foo.bar")

编辑 :如果您的班级包含非字母字符,并且您想查找以Fw(500) D(ib) Fz(42px)开头的元素,请尝试如下操作:

elem = wd.find_elements_by_css_selector("span[class ^= 'Fw(500) D(ib) Fz(42px)']")

尝试通过XPath查找元素:

//span[@class='foobar']

这应该工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM