我想使用Selenium python为以下html发送“用户名”:

<div class="entryforms-elements">
    <input id="entryforms-control-element" class="entryforms-element-text" type="text" autocomplete="off"></input>
</div>


但是以下方法均无效:

browser.find_element_by_xpath('//input[@id="entryforms-control-element"]').send_keys('username')

browser.find_element_by_id('entryforms-control-element').send_keys('username')

browser.find_element_by_class_name('entryforms-element-text').send_keys('username')


请帮我!

最佳答案

您可能要检查找到的元素的大小,以确保您确实在查找某些内容。

如果您使用的是Firefox,则可能会遇到问题:
selenium webdriver is clearing out fields after sendKeys had previously populated them

或在发送密钥后,某些javascript可能正在修改该字段(可能是页面加载后触发了一些js)。

您还可以尝试先调用click()然后发送按键-如果是上述问题或类似问题,可能有助于集中该元素。

关于python - 使用Selenium Python发送 key 不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21897969/

10-12 15:01