无法在Selenium Python中找到元素(无法找到元素的框架)

时间:2018-02-21 20:56:44

标签: python selenium-webdriver selenium-chromedriver

我无法使用selenium找到元素 我搜索过,发现有框架,通过改变框架,我可以获得元素 但就我而言,我无法找到框架 我搜索了整个HTML,但无法找到框架只能找到表格。

以下是我编辑的代码片段,以便大致了解: -

<div class="collapse navbar-collapse"> ==$0
      <div class="nav nabar-right">==$0
             <div class="navpage-header-content">
                        <form target="gsft_main" role="search" action="text_search_exact_match.do" aria-label="Global Search" class="form-inline navpage-global-search ng-non-bindable" method="GET">
                          <div class="input-group-transparent">
                          <input id="sysparm_search" placeholder="Search" class="form-control form-control-search" type="search"name="sysparm_search">
                          <label for="sysparm_search" title="Search" data-original-title="Search">
                           <span class="input-group-addon-transparent icon- search sysparm-search-icon"></span>
                           </label>
                           </div>
                           </form>
                 </div>

我的元素ID是sysparm_search 它与堆栈溢出的搜索栏相同,位于同一区域。

我试过

wait(driver, 10).until(EC.frame_to_be_available_and_switch_to_it("gsft_main"))  
element3=driver.find_element_by_id("sysparm_search")  

但没有得到元素:
错误是: - 无法找到元素:

1 个答案:

答案 0 :(得分:1)

我在寻找,这就是我得到的 该元素存在,但主要问题是登录后我被重定向到此页面。剧本继续。所以我无法找到它。

我使用的工作方式是我使脚本等待,直到我通过此命令找到元素。

wait(driver, 10).until(EC.presence_of_element_located((By.ID, "sysparm_search")))

希望它有所帮助......