Невозможно автоматизировать выбор опции List-box, используя Selenium и Python - PullRequest
1 голос
/ 20 февраля 2020

Я пытался использовать Selenium и автоматизировать каталогизацию книг с помощью этой программы под названием Koha. В рамках этого процесса мне нужно обязательно выбрать «тип элемента» из выпадающего меню (изображение прилагается) Раскрытие Koha

Теперь я попробовал несколько способов go об этом, но все не удалось:

  1. Использование методов find_element, чтобы щелкнуть по раскрывающемуся списку и выбрать опцию - Параметры в раскрывающемся списке по какой-то причине считаются пустыми элементами (фрагмент страницы исходный код прилагается) Исходный код раскрывающегося списка

Используемый код:

itemElem = browser.find_element_by_xpath("//select[contains(@id,'tag_942_subfield_c')]")
opElem = itemElem.find_elements_by_tag_name('option')
print([op.text for op in opElem])
print([op.value for op in opElem])
print([op.id for op in opElem])

Результат операторов печати:

['','','','','','','']
Выполнение JavaScript запросов для взаимодействия с DOM - я могу щелкнуть раскрывающийся список, но поиск элементов списка возвращает ошибку (изображения HTML кода для страницы) Для раскрывающегося списка , Параметры раскрывающегося списка

Используемый код:

java_script = "document.getElementsByClassName('select2-choice')[2].click();"
browser.execute_script(java_script)
javaScript = "document.getElementsByClassName('select2-result-label')[5].click();"
browser.execute_script(javaScript)                                

Результат кода:

Error occurred while filling in MARC fields.
Message: TypeError: document.getElementsByClassName(...)[5] is undefined

Все остальное Я мог бы попробовать? Дайте мне знать, может ли помочь совместное использование кода HTML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...