Python 和 Selenium WebDriver 未在正确的文本框中输入文本
Python and Selenium WebDriver not entering text in the correct text box
我正在尝试使用 python 和 selenium 编写一个 instagram 机器人,但我无法让该机器人登录 instagram。每当它尝试输入用户名和密码登录时,它都会输入用户名,然后转到密码框并输入前两三个字符,然后返回并在用户名框中输入其余部分。
gif showing the problem
我尝试了各种解决方案,到目前为止,唯一成功的方法是使用 javascript 来填充方框,但该方法非常笨拙,并且 "Log in" 按钮有问题可以点击,所以如果我能让这个方法起作用我会很高兴。
这是我的代码:
#!/usr/bin/env/python3
import time
from selenium import webdriver
class InstaBot:
def __init__(self, username, passwd):
self.username = username
self.passwd = passwd
self.driver = webdriver.Safari(executable_path="/usr/bin/safaridriver")
self.driver.get("https://instagram.com") # load instagram login
time.sleep(2)
self.driver.find_element_by_xpath("//input[@name=\"username\"]").send_keys(username)
self.driver.find_element_by_xpath("//input[@name=\"password\"]").send_keys(passwd)
# self.driver.find_element_by_xpath('//button[@type="submit"]').click()
time.sleep(2)
self.driver.quit() # close browser window
InstaBot("username", "P4$$w0rd")
提前感谢您的帮助!
好的,所以我只是尝试下载并使用 Firefox,这似乎已经成功了。我可以在正确的文本框中输入用户名和密码,它现在可以毫无错误地单击登录按钮,所以我猜想使用 safari 时发生了一些事情。我不知道为什么,但现在它正在工作。因此,如果其他人看到此线程并遇到此问题,请尝试使用不同的浏览器,因为这似乎对我有用。
我正在尝试使用 python 和 selenium 编写一个 instagram 机器人,但我无法让该机器人登录 instagram。每当它尝试输入用户名和密码登录时,它都会输入用户名,然后转到密码框并输入前两三个字符,然后返回并在用户名框中输入其余部分。
gif showing the problem
我尝试了各种解决方案,到目前为止,唯一成功的方法是使用 javascript 来填充方框,但该方法非常笨拙,并且 "Log in" 按钮有问题可以点击,所以如果我能让这个方法起作用我会很高兴。
这是我的代码:
#!/usr/bin/env/python3
import time
from selenium import webdriver
class InstaBot:
def __init__(self, username, passwd):
self.username = username
self.passwd = passwd
self.driver = webdriver.Safari(executable_path="/usr/bin/safaridriver")
self.driver.get("https://instagram.com") # load instagram login
time.sleep(2)
self.driver.find_element_by_xpath("//input[@name=\"username\"]").send_keys(username)
self.driver.find_element_by_xpath("//input[@name=\"password\"]").send_keys(passwd)
# self.driver.find_element_by_xpath('//button[@type="submit"]').click()
time.sleep(2)
self.driver.quit() # close browser window
InstaBot("username", "P4$$w0rd")
提前感谢您的帮助!
好的,所以我只是尝试下载并使用 Firefox,这似乎已经成功了。我可以在正确的文本框中输入用户名和密码,它现在可以毫无错误地单击登录按钮,所以我猜想使用 safari 时发生了一些事情。我不知道为什么,但现在它正在工作。因此,如果其他人看到此线程并遇到此问题,请尝试使用不同的浏览器,因为这似乎对我有用。