python - 为什么我不能通过 selenium 选择菜单?
问题描述
<div class="fancy-select" data-file=""><label>Choose a file</label>
<select>
<option value="admin_20210519182831.log">SaveFiles\Logs\admin_20210519182831.log</option>
<option value="admin_20210519183038.log">SaveFiles\Logs\admin_20210519183038.log</option>
<option value="chat_20210519182831.log">SaveFiles\Logs\chat_20210519182831.log</option>
<option value="chat_20210519183038.log">SaveFiles\Logs\chat_20210519183038.log</option>
</select>
我的代码
get_div = Select(driver.find_element_by_class_name('fancy-select'))
get_div.select_by_value("chat_20210519183038.log")
错误
Traceback (most recent call last):
File "C:\Users\Up\Desktop\New folder\test02.py", line 36, in <module>
get_div = Select(driver.find_element_by_class_name('fancy-select'))
File "C:\Users\Up\AppData\Roaming\Python\Python39\site-packages\selenium\webdriver\support\select.py", line 37, in __init__
raise UnexpectedTagNameException(
selenium.common.exceptions.UnexpectedTagNameException: Message: Select only works on <select> elements, not on <div>
第 36 行
get_div = Select(driver.find_element_by_class_name('fancy-select'))
我已经被这个错误困扰了很长时间,试图弄清楚并尝试修复它,但它没有通过。请帮助知道帮助的人。
解决方案
What you can try is to give the select tag an id fancy-sel:
select = Select(driver.find_element_by_id('fancy-sel'))
# select by visible text
select.select_by_visible_text('SaveFiles\Logs\chat_20210519183038.log')
# select by value
select.select_by_value('chat_20210519183038.log')
推荐阅读
- javascript - Jquery从全文中提取所有可能的链接并转换为href
- c - 位测试。计数位
- java - 带有 Vaadin UI 的 Spring Boot 应用程序不断刷新屏幕
- python - 在 Python 中按字符串的值分组并计算组数
- unity3d - Unity3D:命名空间“谷歌:找不到
- java - 在 android studio 中设置由动态创建的 EditText 定义的文本
- python - Python中的特定子矩阵提取
- python - 如何在字典中获取值多个数组
- excel - 自动创建一个 windows 文件夹来存储 Outlook 电子邮件附件
- java - Java HttpServer 无法处理对上下文“/”的请求