用Python脚本+Selenuim自动点网页?手把手教你搞定登录、填表、截图

早上赶着打卡,网页还没加载完就手抖点错了;抢演唱会门票时刷新十几次,眼睛酸了手也麻了;公司每周要填同一张报表,复制粘贴到想砸键盘……这些事,其实写几行Python脚本,让Selenium帮你干了。

啥是Selenium?

它不是杀毒软件,也不是浏览器插件,而是一个能‘遥控’Chrome、Edge这些浏览器的工具。你写的Python脚本就像发指令的小队长:打开哪个网址、点哪个按钮、输什么账号密码、等页面加载完再下一步——全听你的。

先装上再说

打开命令行(Windows按 Win+R 输入 cmd,Mac/Linux 打开终端),一行搞定:

pip install selenium

再下载对应浏览器的驱动,比如 ChromeDriver(去 chromedriver.chromium.org 下,版本别和你本地Chrome差太远)。把它放进 Python 能找到的地方(比如和脚本放同一文件夹,或系统PATH里)。

来个真能跑的登录脚本

以某邮箱登录页为例(把网址换成你自己的):

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

# 启动浏览器(确保 chromedriver 在路径中)
driver = webdriver.Chrome()
driver.get("https://mail.example.com/login")

# 等用户名框出现,再输入
wait = WebDriverWait(driver, 10)
user_input = wait.until(EC.presence_of_element_located((By.ID, "username")))
user_input.send_keys("your_account")

driver.find_element(By.ID, "password").send_keys("your_pass")
driver.find_element(By.ID, "login-btn").click()

# 等跳转完成,截个图留念
wait.until(EC.url_changes(driver.current_url))
driver.save_screenshot("login_success.png")
print("登录成功,截图已保存!")
driver.quit()

注意:ID 值得自己按 F12 查看网页源码,找 input 标签里的 id=name= 属性。不会找?右键‘检查’→鼠标移到输入框→看高亮那一行代码。

常见小坑怎么绕?

弹窗挡路?加一句:driver.switch_to.alert.accept()
页面加载慢卡住?别用 time.sleep(3) 硬等,用上面示例里的 WebDriverWait 更稳;
点不到按钮?试试用 By.XPATH 定位,比如:driver.find_element(By.XPATH, "//button[contains(text(), '提交')]")。

能干点啥实际的事?

  • 每天8点自动登录企业OA,打卡+读通知
  • 监控某电商页面价格,降价立刻微信发你
  • 批量导出几十个网页的标题和链接,存成Excel
  • 测试自家网站表单能不能正常提交(开发自测神器)

脚本写好后,双击运行 .py 文件,或者扔进 Windows 任务计划程序 / Mac 的 launchd,让它每天准时开工。你该干啥干啥,电脑在后台默默干活。