You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Selenium WebDriver驱动窗口自动关闭,该如何解决?

问题解决:LinkedIn自动化脚本窗口自动关闭及登录异常

核心问题拆解

你的脚本窗口自动关闭主要有两个原因:

  1. Selenium脚本执行完毕后,会自动终止浏览器进程导致窗口关闭
  2. 代码里存在登录按钮点击的语法错误,登录逻辑未执行就提前结束了

另外代码还有几个影响功能的细节问题:

  • 登录按钮的定位错误,join-form-submit是注册按钮的ID,并非登录按钮
  • 直接访问feed页面会被重定向到登录页,不如直接访问登录页更稳定

修正后的完整代码

from selenium import webdriver
from selenium.webdriver.common.by import By
from time import sleep

# 直接访问LinkedIn登录页,避免重定向问题
driver = webdriver.Chrome()
driver.get('https://www.linkedin.com/login')
sleep(2)

# 替换为你的登录信息
email = '你的邮箱地址'
password = '你的密码'

# 定位邮箱输入框并输入
box_email = driver.find_element(By.XPATH, '//input[@id="username"]')
box_email.send_keys(email)

# 定位密码输入框并输入
box_password = driver.find_element(By.XPATH, '//input[@id="password"]')
sleep(1)
box_password.send_keys(password)

# 定位登录按钮并执行点击(修正语法错误和定位错误)
button_login = driver.find_element(By.XPATH, '//button[@type="submit"]')
sleep(1)
button_login.click()  # 必须加括号调用click方法

# 保持窗口不关闭,直到手动确认
input("按回车键关闭浏览器...")
driver.quit()

关键修正说明

  • 阻止窗口自动关闭:脚本末尾添加input("按回车键关闭浏览器..."),让脚本暂停等待用户输入,避免执行完毕后直接关闭浏览器;也可以根据需求用driver.quit()手动控制关闭时机
  • 修复点击语法错误:把button_login.click改为button_login.click(),这是Python方法调用的基础语法问题
  • 修正元素定位:LinkedIn登录页的邮箱输入框ID为username,用type="submit"定位登录按钮更可靠,避免平台ID变更导致定位失效
  • 优化访问路径:直接访问登录页https://www.linkedin.com/login,减少重定向带来的加载不稳定

额外提醒

  • 尽量少用固定时长的sleep(),可以改用Selenium的显式等待(WebDriverWait)等待元素加载,提升脚本稳定性
  • LinkedIn有反爬机制,频繁自动化操作可能触发验证码或账号限制,建议控制操作频率

内容的提问来源于stack exchange,提问作者kkaaique

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 09:44:03