python selenium css选择器第n个元素

时间:2013-10-11 19:55:08

标签: python linux selenium

我试图在selenium上解析这个代码,基本上想要列表中的第一个项目,即“product one-col new”!点击...

<ul id="product-list">

    <li class="product one-col new">
        <ul>
            <li class="image" title="one item 5">
                <a href="#product/0f37f703-ed9a-3d10-86c0-7d0c0fcdb9ec">
                    <img width="" height="" alt="" src="/content/images/ProductImages/you-are-here/3/E/4/3E42561208174E6FBC81A10CDAE48659.jpg"></img>
                    <span class="new"> … </span>
                    <span class="hover"></span>
                </a>
                <p class="retailer">

                    CHECK ME

                </p>
                <p class="brand"></p>
            </li>
            <li class="price"> … </li>
            <li class="name" title="one item 5"> … </li>
            <li class="first-seen"> … </li>
        </ul>
    </li>
    <li class="product one-col new"> … </li>
    <li class="product one-col new"> … </li>
    <li class="product one-col new"> … </li>
    <li class="product one-col new"> … </li>
    <li class="product one-col new"> … </li>
    <li class="product one-col new"> … </li>
    <li class="product one-col new"> … </li>

我试过这个

browser.find_element_by_css_selector("ul[id='product-list']  li:nth-of-type(1)").click()

但它不起作用?

任何想法?

更新

正确的路径是

browser.find_element_by_css_selector("ul#product-list > :first-child").text

1 个答案:

答案 0 :(得分:2)

看起来你想要一个直接的孩子,所以选择器应该使用子组合子。另外,还有:first-of-type / :first-child

#product-list > :first-child