2017-06-05 29 views
0

私はSeleniumの初心者で、ドロップダウンのオプションを選択したいと思います。しかし、それは常に、エラーメッセージでは動作しません "selenium.common.exceptions.ElementNotInteractableException:メッセージ:" 私のセレンコードがpython + selenium - hidden = trueのドロップダウンリストを選択する方法

dropM = browser.find_element_by_id("template-select-dialog_template-names") 
dropM.find_element_by_xpath("//option[@value='KST stack for LRT']").click() 
を下回っている

<div id="template-select-dialog" class="modal fade in" tabindex="-1" data-keyboard="true" style="display: block;" aria-hidden="false" hidden="true"> 
<div class="modal-dialog"> 
<div class="modal-content"> 
<div class="modal-header"> 
<div class="modal-body"> 
<div class="modal-body-title"> 
<div class="modal-body-message"> 
<div class="template-names"> 
<select id="template-select-dialog_template-names"> 
<option class="select-none"></option> 
<option value="Sample server">Sample server</option> 
<option value="Sample network">Sample network</option> 
<option value="Sample server in network">Sample server in network</option> 
<option value="KST stack">KST stack</option> 
<option value="KST stack for LRT">KST stack for LRT</option> 
</select> 

の下

HTMLコードがあります

私は "隠された="本当の ""かどうかの理由を知らないので、あなたは私にいくつかのアドバイスを与えるでしょう、ありがとう!

+0

はあなたが実行しようとしている正確な手順を手動で更新することを検討することはできますか?ドロップダウンのスナップショットを更新することを検討してください。ありがとう – DebanjanB

答えて

1

特別なクラスがありますドロップダウンに対処する要素に

from selenium.webdriver.support.ui import Select 
select = Select(driver.find_element_by_id("template-select-dialog_template-names")) 
select.select_by_visible_text('KST stack for LRT') 

を選択詳細情報はこちら - http://selenium-python.readthedocs.io/navigating.html#filling-in-forms

+0

私はこのメソッドを使用しましたが、エラーメッセージ "selenium.common.exceptions.ElementNotInteractableException:Message:" – wjy816

+0

があります。しかし、あなたは回避策としてjavascriptを実行しようとすることができます - 'driver.execute_script(" document.getElementById( 'template-select-dialog'))setAttribute( "hidden"、false); ")' – SAZ

関連する問題