如何在Selenium Python中单击其href包含某些字符串的链接?

时间:2016-05-23 20:53:59

标签: python selenium selenium-webdriver css-selectors

我想点击其网址中包含“930”的链接site

<div id="liste_drives">
    <ul>
    <li class="">
        <span class="left">
        02 -
        <a href="http://www.tt.com/d/n/p/st-985">tt</a>
        <p class="a"> </p>
        </span>
        <a class="entre"  href="/d/m/St-985/">i enter here</a>  
    </li>
    <li class="">
        <span class="left">
        03 -
        <a href="http://www.tt.com/d/n/p/ee-930">tt</a>
        <p class="a"> </p>
        </span>
        <a class="entre"  href="/d/m/ee-930/">i enter here</a>
    </li>
</div>

我读了this answer

我试试这个:

id = "930"
driver.find_element_by_css_selector('"a[href*=%s]" %id').click()

但我无法点击网址

1 个答案:

答案 0 :(得分:1)

%id部分应该在字符串之外,以便字符串格式化正常工作:

driver.find_element_by_css_selector("a[href*=%s]" % id)

请注意,这假定id仅包含字母数字字符。如果没有,您需要将值括在引号中:

driver.find_element_by_css_selector('a[href*="%s"]' % id)