Я пытаюсь автоматизировать материал в Python Selenium. У меня есть набор переключателей со связанными раскрывающимися списками (при нажатии переключателя активируется соответствующий раскрывающийся список). Значение параметра для выпадающего списка - это мой ввод, который будет варьироваться для каждой записи в l oop. Я не буду знать, какой выпадающий будет иметь мой вход, поэтому я использую try
, чтобы проверить оба выпадающих списка, активируя переключатели по одной. Но мой код продолжается без выбора раскрывающегося списка. В приведенном ниже примере мой ввод находится во втором раскрывающемся списке, но код выбирает первую радиокнопку и запускает except
без выбора раскрывающегося списка.
Python Код:
try:
driver.find_element_by_id('rb_NEXTACTION_1').click()
driver.find_element_by_xpath("//select[@name='ADMINEVENTID']/option[@value='%s']"%x_eventid).click() ## eventid
except:
try:
driver.find_element_by_id('rb_NEXTACTION_2').click()
driver.find_element_by_xpath("//select[@name='ADMINEVENTID']/option[@value='%s']"%x_eventid).click() ## eventid
except:
x_dummy1 = 1
HTML Код (для справки):
<label class='radioinputwrapper' for='rb_NEXTACTION_1'><input id='rb_NEXTACTION_1' name='NEXTACTION' onclick="HandleEventChange(this);
var uploadfilediv = document.getElementById('uploadfilediv');
if (uploadfilediv) {
uploadfilediv.innerHTML = uploadfilediv.innerHTML;
}
var confirmmatchbutton = document.getElementById('confirmmatchbutton');
if (confirmmatchbutton) {
confirmmatchbutton.style.display = 'none';
}" style='position:relative; vertical-align: top; margin-left: 5px;' type='RADIO' value='EVENT'>Apply the next event: <br></label><span class="eventspan l__margin--xlarge" onclick="
if (this.childNodes[0].disabled) {
jQuery(this).prev().click();
}
"><select disabled='1' name='NEXTEVENTID' onchange="jQuery('[name=NEXTACTION]').filter('[value=EVENT]').prop('checked', true);HandleEventChange(this);" type='SELECT'><option value=""><option value='123'>Some Text</option></select>
</span> <br/><br/>
<label class='radioinputwrapper' for='rb_NEXTACTION_2'><input id='rb_NEXTACTION_2' name='NEXTACTION' onclick="HandleEventChange(this);
var uploadfilediv = document.getElementById('uploadfilediv');
if (uploadfilediv) {
uploadfilediv.innerHTML = uploadfilediv.innerHTML;
}
var confirmmatchbutton = document.getElementById('confirmmatchbutton');
if (confirmmatchbutton) {
confirmmatchbutton.style.display = 'none';
}" style='position:relative; vertical-align: top; margin-left: 5px;' type='RADIO' value='ADMIN'>Move the record to another location in the workflow: <br></label><span class="eventspan l__margin--xlarge" onclick="
if (this.childNodes[0].disabled) {
jQuery(this).prev().click();
}
"><select disabled='1' name='ADMINEVENTID' onchange="jQuery('[name=NEXTACTION]').filter('[value=ADMIN]').prop('checked', true);HandleEventChange(this);" type='SELECT'><option value=""><option value='150'>Some Text</option>