首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用python和selenium与下拉菜单交互

如何使用python和selenium与下拉菜单交互
EN

Stack Overflow用户
提问于 2021-12-17 17:26:08
回答 1查看 58关注 0票数 -1

下面是我试图与之交互的网页中的元素:

代码语言:javascript
复制
<select class="experiment-enable-disable" tabindex="6" jsdisplay="enabled !== undefined" jsvalues=".internal_name:internal_name; aria-labelledby:internal_name + '_name'" jstcache="8" aria-labelledby="enable-experimental-web-platform-features_name">
    <option jsvalues=".selected:!enabled; data-default:!enabled ? 1 : 0" value="disabled" jstcache="15" data-default="1">Disabled</option>
    <option jsvalues=".selected:enabled; data-default: enabled ? 1 : 0" value="enabled" jstcache="16" data-default="0">Enabled</option>
</select>

下面是我用来选择它的代码:

代码语言:javascript
复制
select = driver.find_element_by_class_name("experiment-enable-disable")

现在,当我试图以“单击”或“sendkey”等方式与它交互时,它会说“元素不可插入”。

如何与下拉菜单进行交互?

EN

回答 1

Stack Overflow用户

发布于 2021-12-17 19:50:05

在尝试与下拉菜单交互时,可能不会加载它。通过执行以下操作,始终可以诱导等待:

代码语言:javascript
复制
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait

driver = webdriver.Chrome()
driver.get("insertwebsitehere")

try:
     element = WebDriverWait(driver, 10).until(EC.element_to_be_clickable(By.XPATH,'xpath')).click()
     print("it's clickable")
except:
     pass

编辑:如果可能的话,我会使用XPATH。此外,还不推荐使用find_element_by_class_name。相反,如果您想使用类名而不是XPATH,请使用find_element(By.CLASS_NAME, "insert class name here")

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70396778

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档