Python selenium webdriver click() 无法正常工作

Python selenium webdriver click() does not work properly

我是 Python 的新人。我正在借助 Youtube 教程构建 Instagram 机器人。

我正在尝试登录我的帐户,然后从那里导航到一个用户。 但是 click() 似乎无法正常工作。 它转到登录页面,填写用户名和密码并单击登录按钮并导航到用户而不登录(就像打开用户的个人资料而不登录您的帐户一样)。

代码如下:

from selenium import webdriver 
import time

class InstagramBot:
    def __init__(self, username, password):
        self.username = username
        self.password = password
        self.driver = webdriver.Chrome('chromedriver.exe')
        self.base_url = 'https://www.instagram.com'
        self.login()

    def login(self):
        self.driver.implicitly_wait(10)
        self.driver.get('{}/'.format(self.base_url))
        self.driver.find_element_by_name('username').send_keys(self.username)
        self.driver.find_element_by_name('password').send_keys(self.password)
        self.driver.find_element_by_xpath('//*[@id="loginForm"]/div/div[3]').click() 
        **That click() does not have any effect **


    def nav_user(self, user):
        self.driver.get('{}/{}/'.format(self.base_url , user))

if __name__ == '__main__':
ig_bot=InstagramBot('my_username' , 'my_password')
ig_bot.nav_user('garyvee') **navigates me to garyvee without logging me in**  
time.sleep(100)

当我不使用 nav_user 函数时,click() 可以正常工作并让我登录。

请帮帮我...

身份验证过程需要一些时间。你可以在点击按钮后再次“休眠”,然后就可以了。

def login(self):
    self.driver.implicitly_wait(10)
    self.driver.get('{}/'.format(self.base_url))
    self.driver.find_element_by_name('username').send_keys(self.username)
    self.driver.find_element_by_name('password').send_keys(self.password)
    self.driver.find_element_by_xpath('//*[@id="loginForm"]/div/div[3]').click()
    time.sleep(5)    # <--- adjust to your needs