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 webdriver中的if语句_Python_Selenium_Selenium Webdriver - Fatal编程技术网

python webdriver中的if语句

python webdriver中的if语句,python,selenium,selenium-webdriver,Python,Selenium,Selenium Webdriver,我想检查某个窗口是否打开,是否需要继续注销,但如果不需要,则需要打开小部件然后注销 小部件位于另一个框架内。我不想为了查看小部件是否打开而必须切换帧,如果不需要的话 我的代码: window=driver.find_element_by_id("DR44") if window.is_displayed(): userdropdown=driver.find_element_by_id("Menu").click() logout=driver.find_element_by_i

我想检查某个窗口是否打开,是否需要继续注销,但如果不需要,则需要打开小部件然后注销

小部件位于另一个框架内。我不想为了查看小部件是否打开而必须切换帧,如果不需要的话

我的代码:

window=driver.find_element_by_id("DR44")
if window.is_displayed():
    userdropdown=driver.find_element_by_id("Menu").click()
    logout=driver.find_element_by_id("df456").click()
else:
     LaunchMenu=driver.find_element_by_id("launch").click()
     bvWidget=driver.find_element_by_id("54353sfd").click()
     launch= driver.find_element_by_id("3rfs").click()
     userdropdown=driver.find_element_by_id("userMdfd243l").click()
     logout=driver.find_element_by_id("efdf343").click()
我的错误:无法定位元素


我想检查页面上是否找到小部件的标题,如果找到,则继续注销,如果没有,则打开小部件然后注销。

如果不切换到iframe,则无法在iframe内与任何元素交互。首先通过
驱动程序切换到iframe。切换到\u frame()
并且您也不需要为要单击的变量分配元素。见下文:

driver.switch_to_frame(iframe) 

if driver.find_element_by_id("DR44").is_displayed():
    driver.find_element_by_id("Menu").click()
    driver.find_element_by_id("df456").click()
else:
    driver.find_element_by_id("launch").click()
    driver.find_element_by_id("54353sfd").click()
    driver.find_element_by_id("3rfs").click()
    driver.find_element_by_id("userMdfd243l").click()
    driver.find_element_by_id("efdf343").click()
需要注意的是:iframe是iframe id的列表