selenium教程:零基础从环境搭建到网页自动化实战案例详解

admin 综合编程开发技术 4


是不是听说 Selenium 能实现网页自动化,想学却被 “环境搭建”“元素定位” 这些词吓退?下载了 Python 却不知道怎么装 Selenium 库,浏览器驱动下了半天还是提示 “找不到文件”;好不容易跑起来代码,却总报 “元素定位失败”,网页上明明有这个按钮却点不了;跟着教程敲的自动化脚本,要么运行到一半卡住,要么乱点一通。零基础学 Selenium,环境搭不对、语法记不住、实战不会用是最常见的三大坎。今天兔子哥就用大白话,从环境搭建讲到实战案例,每个步骤都带截图级说明,新手跟着做,也能轻松入门网页自动化!

基础问题:Selenium 到底是啥?零基础学它真有用?


可能有朋友会问:“Selenium 听着挺专业,它到底能干嘛呀?我连代码都不会写,学这个有用吗?” 其实 Selenium 就是个 “网页机器人”,能模拟人操作浏览器 —— 自动打开网页、输入文字、点击按钮、下拉页面,你手动能做的操作,它基本都能自动化完成。
为啥零基础也要学?因为它能帮你省超多重复工作!比如每天要登录系统填报表、定期爬取网页数据、测试网站功能是否正常,这些重复操作交给 Selenium,设置好脚本后点一下运行,电脑自己就做完了。网友 “小文员” 说:“之前每天花 1 小时手动填数据,学了 Selenium 后写个脚本 5 分钟搞定,现在摸鱼时间都变多了!” 所以别担心基础,Selenium 用 Python 写脚本,语法简单,新手很容易上手。


环境搭建:3 步搞定,比装软件还简单


学 Selenium 前,得先搭好环境,这三步一步都不能错,不然代码跑不起来:

步骤 1:装 Python(Selenium 的 “发动机”)


Selenium 脚本主要用 Python 写,所以得先装 Python:
  • 去 Python 官网(python.org)下载最新版,选 “Windows installer”(别下错成 Mac 版);
  • 安装时一定要勾选 “Add Python to PATH”(自动配置环境变量,新手必勾!);
  • 一路点 “Install Now”,等进度条走完,打开 cmd 输入 “python --version”,能看到版本号就装好了。

步骤 2:装 Selenium 库(自动化的 “工具包”)


打开 cmd,输入一行命令就能装:
plaintext
pip install selenium

回车后等待安装,出现 “Successfully installed selenium” 就成功了。如果提示 “pip 不是内部命令”,说明步骤 1 没勾 “Add Python to PATH”,卸载重装时记得勾选。

步骤 3:下浏览器驱动(连接浏览器的 “钥匙”)


Selenium 需要驱动才能控制浏览器,以 Chrome 为例:
  • 先查自己的 Chrome 版本:打开 Chrome→设置→关于 Chrome,记一下版本号(比如 126.0.6478);
  • 去 Chrome 驱动官网(chromedriver.chromium.org)下载对应版本的驱动,注意系统是 Windows 还是 Mac;
  • 把下载的驱动解压,复制到 Python 安装目录(右键 Python 图标→打开文件位置,粘贴进去),或者随便放个文件夹,记住路径就行。

环境组件作用新手最容易错的点解决办法
Python运行脚本的基础没勾 PATH,找不到 Python重装时勾选 “Add Python to PATH”
Selenium 库提供自动化功能pip 命令报错用 “pip3 install selenium” 试试
浏览器驱动控制浏览器版本和浏览器不匹配严格按 Chrome 版本下驱动

兔子哥提示:驱动版本必须和浏览器版本对应,差一个小版本都可能报错。比如 Chrome 是 126 版,驱动就得下 126 开头的,别下 125 或 127 版。


基础操作:5 行代码实现第一个自动化脚本


环境搭好后,先来个简单案例:自动打开百度,搜索 “Selenium 教程”,步骤超简单:

步骤 1:新建 Python 文件


在桌面新建一个文本文件,改名为 “baidu_search.py”(后缀改.py,别保留.txt),用记事本打开。

步骤 2:写脚本代码(带详细注释)


python
# 导入Selenium的工具from selenium import webdriverfrom selenium.webdriver.common.by import Byimport time# 启动Chrome浏览器(驱动在Python目录下不用写路径)driver = webdriver.Chrome()# 打开百度首页driver.get("https://www.baidu.com")# 找搜索框并输入文字(百度搜索框的id是“kw”)driver.find_element(By.ID, "kw").send_keys("Selenium教程")# 找搜索按钮并点击(百度搜索按钮的id是“su”)driver.find_element(By.ID, "su").click()# 等待5秒,让页面加载完再关闭time.sleep(5)# 关闭浏览器driver.quit()

步骤 3:运行脚本


双击 “baidu_search.py”,会自动打开 Chrome,弹出百度页面,输入文字并点击搜索,5 秒后自动关闭,成功啦!避坑点
  • 代码里的 “By.ID” 别拼错,ID 后面的搜索框和按钮 id 要正确(百度的确实是 “kw” 和 “su”);
  • 如果驱动没在 Python 目录,要写全路径,比如webdriver.Chrome("D:/driver/chromedriver.exe")
  • 运行时别手动操作浏览器,不然会干扰脚本。



实战案例:自动登录网站,填表单提交


来个实用案例:自动登录某网站(以模拟登录为例),输入用户名密码并提交,步骤清晰:

步骤 1:分析网页元素


打开目标网站登录页,按 F12 打开开发者工具,用 “选择元素” 按钮(左上角箭头)分别点用户名框、密码框、登录按钮,记一下它们的 id 或 name:
  • 用户名框 id:“username”;
  • 密码框 id:“password”;
  • 登录按钮 id:“loginBtn”。

步骤 2:写登录脚本


python
from selenium import webdriverfrom selenium.webdriver.common.by import Byimport time# 启动浏览器driver = webdriver.Chrome()# 打开登录页(换成实际网站地址)driver.get("https://www.example.com/login")# 等待2秒,让页面加载完time.sleep(2)# 输入用户名(替换成你的账号)driver.find_element(By.ID, "username").send_keys("testuser")# 输入密码(替换成你的密码)driver.find_element(By.ID, "password").send_keys("123456")# 点击登录按钮driver.find_element(By.ID, "loginBtn").click()# 等待3秒,看登录结果time.sleep(3)# 关闭浏览器driver.quit()

步骤 3:解决常见问题


如果运行时提示 “元素找不到”,可能是页面没加载完就执行了代码,把time.sleep(2)改长一点,比如 5 秒;如果按钮没有 id,可用其他定位方式,比如By.NAMEBy.XPATH(新手先学用 ID 定位,最简单)。


常见错误解决:新手必踩的 4 个坑,这样避!


错误 1:驱动版本不匹配,提示 “session not created”


现象:运行脚本报错,说驱动和浏览器版本不匹配。
解决方法:按步骤 3 重新查 Chrome 版本,下载对应驱动,替换旧驱动。

错误 2:元素定位失败,提示 “no such element”


现象:找不到输入框或按钮,代码里的 ID 没错但就是报错。
解决方法
  • 加等待时间,time.sleep(5)让页面加载完;
  • 用 F12 重新检查元素 ID,可能网页动态加载改了 ID;
  • 换定位方式,比如By.NAMEBy.CLASS_NAME

错误 3:浏览器自动关闭,看不到效果


现象:脚本运行很快,浏览器一闪就关了。
解决方法:在driver.quit()前加time.sleep(10),延长等待时间;或注释掉driver.quit(),手动关闭浏览器。

错误 4:pip 安装 Selenium 失败,提示 “超时”


现象:cmd 里输 pip 命令,半天没反应最后超时。
解决方法:用国内镜像源安装,命令换成:
plaintext
pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple



自问自答:零基础学 Selenium 常见疑问


除了 Chrome,能控制其他浏览器吗?


当然能! Firefox、Edge 都可以,步骤类似:下对应浏览器的驱动,代码里把webdriver.Chrome()换成webdriver.Firefox()webdriver.Edge()就行,新手先练 Chrome,资料最多。

学 Selenium 需要先学 Python 吗?完全没基础能学吗?


最好懂一点 Python 基础,知道变量、函数、缩进这些基本规则,不然看代码会吃力。但完全没基础也能学,先跟着抄脚本,边做边查语法,比如先学会怎么调用 Selenium 的方法,再回头补 Python 基础。

学会 Selenium 能做啥兼职或副业?


可以帮企业写自动化测试脚本、做数据爬取(合法范围内)、开发重复操作的自动化工具,网上很多小任务平台有这类需求,技术熟练后一小时能赚几十到几百块,网友 “自动化小工” 说他靠写 Selenium 脚本每月多赚 2000 多呢。


最后说点实在话


零基础学 Selenium,刚开始环境搭建卡半天很正常,脚本报错也别灰心。我刚开始学的时候,驱动版本不对折腾了一下午,元素定位错了改了十几次才成功。但当看到浏览器自己动起来,自动完成操作时,那种成就感真的不一样。
建议大家从简单案例开始练,先搞定百度搜索,再学登录表单,慢慢加功能。遇到错误别慌,把报错信息复制到百度搜,90% 的问题都有现成答案。Selenium 是个 “越用越顺手” 的工具,练得多了,你会发现很多重复工作都能交给它做,省出的时间用来摸鱼或学新技能不香吗?现在就打开电脑,按步骤搭环境、写第一个脚本,动手练才是最快的入门方法!

标签: selenium

发布评论 0条评论)

  • Refresh code

还木有评论哦,快来抢沙发吧~