2016-08-20 9 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/' 。 4つのチェックボックスがあります。私は最後のものを選択する必要があります。すべてのチェックボックスは同じIDです。だから、私はidで選択すると、最初のチェックボックスを選択すると思います。どのようにして最後のものを選択できますか? – EL323

+1

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

答えて

2

実際find_elementsリターンリストを得たaintのリストをクリックする方法を見つけることを試みている、あなたは以下のように代わりにfind_elementを使用してみてくださいと言っていますそれとも、find_elementsを使用する場合は、以下のように返されたリストにインデックスを使用してみてください: - 編集

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

: - 私は提供されたHTMLで見ているように、私はそこに特有のものではないと思いますあなたが、その後-1として最後のインデックスを渡すことによってfind_elementsを使用してみてくださいと最後の要素を選択するidの最後の要素を選択します:

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

それとも、また、以下のようにユニークなcss_selectorを使用して、この要素を指すようにfind_elementを使用することができます -

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

これは固定ですが、引き続きラジオボタンが選択されていません。その理由は何でしょうか? – EL323

+0

クリックすると例外がありますか? –

+0

そして、提供されたIDが一意であり、正しい要素の位置を特定していることを確認してください。 –

0

あなたはリストを返すfind_elements ....を使用しています。 1つの要素を返すfindelementまたはgetelementを使用します(私はabtのpython関数を知りません)。または、インデックス0を使用して要素を検索します。

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

- :ヨーヨーは、それはあなたが困っている理由です

関連する問題