错误:Selenium Python中的ElementNotInteractableException

时间:2019-06-28 14:49:04

标签: python selenium selenium-webdriver

我在Selenium中找到WebElement时遇到问题。我尝试填写输入字段,这是html:

<div class="container">
            <div class="tp-fl" id="btnSearchStockAutoComplete">
                <span class="tp-icon tp-search tp-co-3 "></span>
            </div>
            <angucomplete placeholder="search" searchfields="Not Found" pause="400" set-focus="tpFocus" selectedobject="tpSelected" titlefield="label" inputclass="form-control form-control-small" matchclass="highlight" api="tpApi" disable="disableSearchBox" stockdetails="stockdetails" class="ng-isolate-scope">
                <div class="tp-re angucomplete-holder tp-width">
                    <div id="fulltextContainer" style="display: none" class="symbol-info tp-etc">
                    </div>
                    <input id="txt_search" class="search-box tp-co-1 tp-pa-rl-5 tp-re tp-bo-bo" type="text" placeholder="Search" onmouseup="this.select();" autocomplete="off">
                    <div id="auto-list-container" class="auto-list-container tp-bg-2 tp-co-1 tp-bo-4 tp-bo tp-width angucomplete-dropdown" style="min-width: 250px; display: none">
                        <div style="display: none" id="loading" class="tp-h-35 tp-pa-rl-10 angucomplete-searching">Searching ...</div>
                        <div style="display: none" id="norecord" class="tp-35 tp-pa-rl-10 angucomplete-searching">Not Found </div>
                        <div id="list_dropdown">
                        </div>
                    </div>
                </div>
            </angucomplete>
        </div>

这是我在python中的代码:

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

    browser=webdriver.Chrome('path')
    inputTxt=browser.find_element_by_xpath('//*[@id="txt_search"]')
    inputTxt.send_keys('stock')

但是当我运行该程序时,它给我一个错误并引发异常,“ selenium.common.exceptions.ElementNotInteractableException:消息:元素不可交互”,我想知道是否有任何可能的解决方案来解决此问题。

1 个答案:

答案 0 :(得分:0)

编写CSS选择器<app-content id='txt_search'>...</app-content>时,这意味着HTML类似于app-content > #txt_search。彼此之间没有空格地连接在一起意味着它们都是同一元素的一部分。您想要的是>app-content #txt_search表示孩子)或<app-content>(表示后代)。从您问题中发布的HTML中,我假设您需要空间,因为我没有看到父{{1}}标签。