Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Selenium:从下拉菜单中选择_Python_Selenium_Automation - Fatal编程技术网

Python Selenium:从下拉菜单中选择

Python Selenium:从下拉菜单中选择,python,selenium,automation,Python,Selenium,Automation,我正在尝试自动化,但在尝试从下拉菜单中进行选择时遇到了一些问题。我可以启动Chrome会话并登录到该页面,但当我到达该页面时,它似乎没有正确定位元素 下拉菜单:LINKNOLONGERAVAILABLE 下拉菜单的HTML代码:LINKNOLONGERAVAILABLE 我的webdriver代码: s1 = Select(driver.find_element_by_id("X")) s1.select_by_value("X") 不确定我是否选择了正确的ID,或者是否需要实现其他功能(

我正在尝试自动化,但在尝试从下拉菜单中进行选择时遇到了一些问题。我可以启动Chrome会话并登录到该页面,但当我到达该页面时,它似乎没有正确定位元素

下拉菜单:LINKNOLONGERAVAILABLE

下拉菜单的HTML代码:LINKNOLONGERAVAILABLE

我的webdriver代码:

s1 = Select(driver.find_element_by_id("X")) 

s1.select_by_value("X")
不确定我是否选择了正确的ID,或者是否需要实现其他功能(如等待?)。我试过xpath、css选择器、按名称和按id,但都没有用

谢谢你的帮助


编辑:元素被包装在一个iFrame中,我所要做的就是切换框架,它工作了:D

如果您想尝试等待,您可以遵循以下代码:

wait = WebDriverWait(driver, 10)
drop_down= wait.until(EC.visibility_of((By.CSS_SELECTOR, "select.PSDROPDOWNLIST[name^='TL_RPTD_TIME_PUNCH_TYPE'][id^='TL_RPTD_TIME_PUNCH_TYPE']")))  

select = Select(drop_down)

# select by visible text
select.select_by_visible_text('Transfer')  
我不确定ID是否唯一,因此,我用ID、名称和类名构建了一个css选择器

您必须导入以下内容:

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC 

希望这会有所帮助。

它会引发什么异常?嘿,伙计,谢谢你的回复。我实现了所有功能,它向我发送了这个错误。在上下文中,我为您包括了所有内容:以下是我的代码:错误:您共享的URL()表示无法访问该站点。你能分享一下这个域名吗对不起,我们联系不到它,因为它在我工作的地方的内联网上。有什么想法吗?你可以打印:
elements=driver.find\u elements\u by_css\u selector(“select.PSDROPDOWNLIST[name^='TL\u RPTD\u TIME\u PUNCH\u TYPE'][id^='TL\u RPTD\u TIME\u PUNCH\u TYPE'])
然后
打印(len elements)
你在代码中的任何地方都显示了吗?因为这是个例外。