如何使用Python Selenium完成Box平台账号密码自动填写登录
Python Selenium实现Box平台账号密码自动填写方案
登录界面参考:
以下是可直接运行的实现代码:
from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC # 初始化Chrome浏览器驱动,需提前安装和浏览器版本匹配的ChromeDriver driver = webdriver.Chrome() # 跳转Box登录页面 driver.get("https://account.box.com/login") # 配置显式等待,最长等待10秒,避免页面未加载完成导致元素定位失败 wait = WebDriverWait(driver, 10) # 定位邮箱输入框,清空默认内容后填入账号 email_input = wait.until(EC.presence_of_element_located((By.ID, "login-email"))) email_input.clear() email_input.send_keys("替换为你的Box账号邮箱") # 点击下一步按钮 next_btn = wait.until(EC.element_to_be_clickable((By.ID, "login-submit"))) next_btn.click() # 等待密码输入框加载完成,清空后填入密码 password_input = wait.until(EC.presence_of_element_located((By.ID, "password-login"))) password_input.clear() password_input.send_keys("替换为你的Box登录密码") # 点击登录按钮完成登录 login_btn = wait.until(EC.element_to_be_clickable((By.ID, "login-submit-password"))) login_btn.click() # 业务逻辑执行完成后关闭浏览器 # driver.quit()
注意事项
- 优先使用ID属性定位元素,Box公开登录页的元素ID长期稳定,不易受页面迭代影响
- 填写内容前调用
clear()方法,避免输入框默认占位符和输入内容拼接导致账号密码错误 - 不要使用
time.sleep()做强制等待,显式等待可以适配不同网络环境的加载速度,大幅提升脚本稳定性 - 若多次异常登录触发Box人机验证,需要额外接入验证码识别方案处理验证环节
内容的提问来源于stack exchange,提问作者Erhan
相关产品推荐
相关产品推荐


