在以下代码中,我试图使用Selenium和python登录Instagram帐户。
我使用了不同的方法来定位字段并用适当的数据填充它们,但是在所有情况下,它都无法定位元素。
这些是我尝试填写的字段: Username
<input aria-label="Phone number, username, or email" aria-required="true" autocapitalize="off" autocorrect="off" maxlength="75" name="username" type="text" class="_2hvTZ pexuQ zyHYP" value="">
密码:
<input aria-label="Password" aria-required="true" autocapitalize="off" autocorrect="off" name="password" type="password" class="_2hvTZ pexuQ zyHYP" value="">
这是我的代码:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
class InstagramBot():
def __init__(self,username, password):
self.browser = webdriver.Chrome()
self.username = username
self.password = password
time.sleep(4)
def login(self):
self.browser.get('https://www.instagram.com/accounts/login')
usernameInput = self.browser.find_element_by_name('username')
passwordInput = self.browser.find_element_by_name('password')
usernameInput.send_keys(self.username)
passwordInput.send_keys(self.password)
self.browser.send_keys(Keys.ENTER)
time.sleep(2)
bot = InstagramBot('MY_USERNAME', 'MY_PASSWORD')
bot.login()
您的脚本没有任何问题,只需等待使用WebDriverWait加载页面
或time.sleep(4)
后移self.browser.get('https://www.instagram.com/accounts/login')
def login(self):
self.browser.get('https://www.instagram.com/accounts/login')
time.sleep(4)
usernameInput = self.browser.find_element_by_name('username')
passwordInput = self.browser.find_element_by_name('password')
usernameInput.send_keys(self.username)
passwordInput.send_keys(self.password)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句