python - selenium 和 python 单击下拉列表中的元素

标签 python selenium select xpath drop-down-menu

对 selenium 来说还是个新手,xpath 在大多数情况下都工作得很好,但在本例中,从下拉框中选择一个元素的下拉菜单就不行了:

盒子的xpath是:

//*[@id="select2-report_object-container"]

我让浏览器单击它,现在它显示一个选项下拉列表, 现在我想从列表中选择元素“title”APP 7.08。

xpath 不起作用,因为它只显示容器

//*[@id="select2-report_object-container"]

要选择的元素如下:

<span class="select2-selection__rendered" id="select2-report_object-container" title="APP 7.08">APP 7.08</span>

标签名称不起作用,链接名称也不起作用,也尝试使用 id 和标题值

消息:

no such element: Unable to locate element

我也尝试过

selenium.select('//*[@id="select2-report_object-container"]' , title="APP 7.08";

运气不好。

我觉得我需要向初始 xpath 或 ID 添加第二个参数,但不确定使用什么来从跨度调用 APP 7.08 的值。

 <span class="select2-selection__rendered" id="select2-report_object-container" title="APP 7.08">APP 7.08</span>

有人可以帮忙吗?

最佳答案

我假设您知道要选择哪个选项,因此您可以使用可见文本或值来完成它。

select = Select(driver.find_element_by_id('select2-report_object-container'))

# select by visible text
select.select_by_visible_text('title')

# select by value 
select.select_by_value('title')

关于python - selenium 和 python 单击下拉列表中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52557923/

相关文章:

python - 在 matplotlib 轴限制内添加 x=y(45 度)线

python - Geopandas 连接形状文件的着色

Python:根据条件重新排列 csv 行

python - 从外部获取正在运行的 Python 脚本的源代码

javascript - 通过 Selenium Python 下载整个网页(html、图像、JS)

MySQL 选择列中具有最小值的行

sql - 如何将 2 个 select 语句合并为一个?

ruby - 使用 Ruby : select an option from drop-down list 进行自动化测试

java - Selenium WebDriver 上传文件/关闭资源管理器窗口

select - DB2:通过干扰 Select 子句中的子查询进行分组