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 当style=display:inline块时无法输入文本;使用Webdriver Selenium_Python_Selenium_Selenium Webdriver - Fatal编程技术网

Python 当style=display:inline块时无法输入文本;使用Webdriver Selenium

Python 当style=display:inline块时无法输入文本;使用Webdriver Selenium,python,selenium,selenium-webdriver,Python,Selenium,Selenium Webdriver,以下是网站上的HTML: <td class="loginPassword"> <input name="_ctl0$MainContentPlaceHolder$oSession$oPwdID" type="password" maxlength="50" id="oPwdID" tabindex="2" class="signin login-input-rounded" autocomplete="off" data-i18n="[title]LoginPage.Pass

以下是网站上的HTML:

<td class="loginPassword">
<input name="_ctl0$MainContentPlaceHolder$oSession$oPwdID" type="password" maxlength="50" id="oPwdID" tabindex="2" class="signin login-input-rounded" autocomplete="off" data-i18n="[title]LoginPage.Password" title="Password" style="display: none;">
<input name="_ctl0$MainContentPlaceHolder$oSession$txtPlainPassword" type="text" id="txtPlainPassword" tabindex="2" class="graytext login-input-rounded" data-i18n="[value]LoginPage.Password" value="Password" style="display: inline-block;">
<input type="hidden" name="_ctl0$MainContentPlaceHolder$oSession$elqCustomerGUID" id="elqCustomerGUID"></td>
它单击password元素,但未输入字符串“papsp”

它抛出以下错误消息:

selenium.common.exceptions.WebDriverException: Message: unknown error: cannot focus element
我试着使用下面的答案,这里是

我不确定我做错了什么,我认为它应该起作用


如果有什么不清楚或需要更多信息,请告诉我。

您试图处理错误的元素。请尝试使用以下代码:

from selenium.webdriver.common.keys import Keys
driver.find_element_by_id('oUserID').send_keys('userName'+Keys.TAB)
driver.find_element_by_id('oPwdID').send_keys('papsp')

通常,您不希望使用JSE来更改元素的状态,因为用户不会以这种方式与页面交互。查找元素是如何启用、可见等的,并对其进行编码。如果您要共享该页面的链接,我们可以查看。以下是链接:[为什么不使用JS直接设置值?啊,没错!!应该更仔细一点,因为某些原因,我一直在查看其他代码行。谢谢,我无法输入。我可以看到登录按钮的id是oLogon。我还有一个问题,但想知道你是否能帮上忙。我尝试了你的代码,并添加了以下内容:
btn=driver.find_element_by_id('oLogon')btn.submit()
也尝试了:
driver.find_element_by_id('oPwdID')。send_key('papsp'+keys.ENTER)
不起作用,简单的
driver.find_element_by_id('oPwdID')。click()
?您是否有任何异常?我以前尝试过,没有错误,但屏幕没有任何功能。链接此处:()但如果我输入了错误的未注册用户名:那么它会给我一个错误,链接此处:()我不确定这是否与安全性有关。我无法重现该问题,因为我在那里没有帐户。您可能需要
导入时间
,并在操作之间添加
时间。睡眠(1)
,以使脚本的行为更像人
from selenium.webdriver.common.keys import Keys
driver.find_element_by_id('oUserID').send_keys('userName'+Keys.TAB)
driver.find_element_by_id('oPwdID').send_keys('papsp')