2016-08-20 55 views
0
<ul> 

        <li> 
         <label class="checkbox"> 
          <input checked="checked" id="fechapublicacion" name="fechapublicacion" onclick="javascript: filtrarListado(&#39;fechapublicacion&#39;, this);" type="radio" value="0" /> 
          <span>Cualquier fecha</span> 
         </label> 
         <input id="fechapublicacionhidden" name="fechapublicacionhidden" type="hidden" value="0" /> 
        </li> 
        <li> 
         <label class="checkbox"> 
          <input id="fechapublicacion" name="fechapublicacion" onclick="javascript: filtrarListado(&#39;fechapublicacion&#39;, this);" type="radio" value="1" /> 
          <span>&#218;ltimas 24 horas</span> 
         </label> 
         <input id="fechapublicacionhidden" name="fechapublicacionhidden" type="hidden" value="0" /> 
        </li> 
        <li> 
         <label class="checkbox"> 
          <input id="fechapublicacion" name="fechapublicacion" onclick="javascript: filtrarListado(&#39;fechapublicacion&#39;, this);" type="radio" value="7" /> 
          <span>&#218;ltimos 7 d&#237;as</span> 
         </label> 
         <input id="fechapublicacionhidden" name="fechapublicacionhidden" type="hidden" value="0" /> 
        </li> 
        <li> 
         <label class="checkbox"> 
          <input id="fechapublicacion" name="fechapublicacion" onclick="javascript: filtrarListado(&#39;fechapublicacion&#39;, this);" type="radio" value="15" /> 
          <span>&#218;ltimos 15 d&#237;as</span> 
         </label> 
         <input id="fechapublicacionhidden" name="fechapublicacionhidden" type="hidden" value="0" /> 
        </li> 
      </ul> 

我想选择最后一个单选按钮。由于他们都有相同的ID,我如何选择最后一个。如何在硒python中选择一个单选按钮?

任何帮助将不胜感激。

+0

那是整个html吗?因为你给我的那个工作得很好:https://paste.fedoraproject.org/411153/47169496/ –

+0

这是链接:'http://www.infoempleo.com/ofertas-internacionales/' 。有四个复选框。我需要选择最后一个。所有复选框都有相同的ID。所以我想通过ID选择将选择第一个复选框。我怎样才能选择最后一个? – EL323

+1

'browser.find_elements_by_id(“fechapublicacion”)[ - 1] .click()'? –

回答

2

其实find_elements返回列表,这就是为什么你有麻烦了一个列表上点击的方法,你应该尝试使用find_element代替如下: -

browser.find_element_by_id("fechapublicacion").click() 

或者,如果你想使用find_elements,你应该尝试在返回列表如下使用索引: -

browser.find_elements_by_id("fechapublicacion")[0].click() 

编辑: - 正如我在提供HTML我看到,我不是唯一有并且要选择id为最后一个元素,然后尝试使用find_elements,并在去年指数传递的-1选择最后一个元素:

browser.find_elements_by_id("fechapublicacion")[-1].click() 

或者你也可以使用find_element如下css_selector使用唯一指向这个元素: -

browser.find_element_by_css_selector("input#fechapublicacion[value='15']").click() 
+0

得到这个固定的,但仍然没有选中单选按钮。这可能是什么原因? – EL323

+0

当你要点击时是否有任何异常? –

+0

并确保提供的Id是唯一的,并且您正在查找正确的元素。 –

0

您正在使用find_elements ....它返回一个列表。使用返回一个元素的findelement或getelement(我不知道abt python函数)。或者使用索引0来获取findelements。它说这是试图哟发现它是不是有