2、环境搭建:Python环境配置、Playwright安装、浏览器驱动管理、第一个自动化脚本
好,咱们正式开始动手了。
这一章,说白了就是「把家伙事儿备齐」。很多新手倒在这一步——环境装到一半报错,心态就崩了。我刚开始学自动化时也踩过不少坑,所以这一章我会把每个细节都讲透。
2.1 Python环境配置
先确认一件事:你的电脑上有没有Python?
打开命令行(Windows按Win+R,输入cmd;Mac打开终端),敲下面这行:
python --version
如果看到类似 Python 3.10.x 或 3.11.x 的输出,恭喜你,环境已经有了。
如果提示「不是内部或外部命令」,那就得装一个。
我个人的建议:去 python.org 下载最新稳定版(目前推荐3.11或3.12)。安装时记得勾选 「Add Python to PATH」——这个选项不勾,后面会哭的。
2.2 虚拟环境(强烈推荐)
为什么要用虚拟环境?
你想想看,每个项目依赖的库版本可能不一样。今天这个项目用Playwright 1.40,明天那个项目用1.45,混在一起迟早出问题。
我习惯在每个项目根目录下创建一个虚拟环境:
# 创建虚拟环境
python -m venv venv
# 激活(Windows)
venv\Scripts\activate
# 激活(Mac/Linux)
source venv/bin/activate
激活后,命令行前面会出现 (venv) 字样,说明你已经在虚拟环境里了。
Ctrl+Shift+P,搜索「Python: Select Interpreter」,选 ./venv/Scripts/python.exe,终端会自动激活虚拟环境。
2.3 安装Playwright
环境准备好了,接下来装Playwright。一句话的事:
pip install playwright
等等,还没完。Playwright需要浏览器内核才能跑。装完库之后,还得装浏览器:
playwright install
这个命令会下载 Chromium、Firefox 和 WebKit 三个浏览器。大概几百MB,网速慢的话得等一会儿。
这里有个坑: 我曾经在公司的内网环境里跑 playwright install,结果卡了半天。后来发现是网络代理的问题。如果你在公司,记得配好代理:
# 设置代理(示例)
set HTTP_PROXY=http://你的代理地址:端口
set HTTPS_PROXY=http://你的代理地址:端口
playwright install
2.4 浏览器驱动管理
用过Selenium的朋友都知道,还得单独下载ChromeDriver,版本还得匹配,烦得很。
Playwright 的好处是:浏览器驱动是内置的。你不需要手动下载任何驱动文件。
playwright install 这一步,已经把浏览器和驱动一起搞定了。说白了,你装完就能直接用,不用操心版本匹配的问题。
但如果你非要手动指定浏览器路径,也可以:
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
browser = p.chromium.launch(
executable_path="C:\\path\\to\\chrome.exe" # 手动指定
)
page = browser.new_page()
page.goto("https://example.com")
browser.close()
不过我个人建议:让Playwright自己管浏览器,省心。
2.5 第一个自动化脚本
好了,激动人心的时刻到了。我们来写第一个脚本:打开百度,搜索「电商自动化」,然后截图。
from playwright.sync_api import sync_playwright
def run():
with sync_playwright() as p:
# 启动浏览器(非无头模式,让你看到浏览器在动)
browser = p.chromium.launch(headless=False)
context = browser.new_context()
page = context.new_page()
# 打开百度
page.goto("https://www.baidu.com")
print("页面标题:", page.title())
# 输入搜索关键词
page.fill("input#kw", "电商自动化")
page.click("input#su")
# 等待搜索结果加载
page.wait_for_load_state("networkidle")
# 截图保存
page.screenshot(path="baidu_search.png")
print("截图已保存为 baidu_search.png")
# 关闭浏览器
browser.close()
if __name__ == "__main__":
run()
跑一下试试:
python first_script.py
如果一切顺利,你会看到一个浏览器窗口自动打开,输入关键词,点击搜索,然后截图保存到当前目录。
2.6 常见问题排查
| 问题 | 原因 | 解决方法 |
|---|---|---|
ModuleNotFoundError: No module named 'playwright' |
没安装Playwright库 | 执行 pip install playwright |
playwright install 下载慢或失败 |
网络问题 | 设置代理,或手动下载浏览器包 |
浏览器一闪而过 |
脚本执行完自动关闭 | 在代码末尾加 input("按回车键退出...") |
找不到元素 |
页面加载慢或选择器不对 | 加 page.wait_for_selector() 等待元素出现 |
page.pause() 可以进入调试模式,手动检查元素。
2.7 本章小结
这一章我们做了四件事:
- 装好了Python环境
- 创建了虚拟环境(我强烈建议你养成这个习惯)
- 安装了Playwright并下载了浏览器
- 跑通了第一个自动化脚本
嗯,基础打牢了。下一章我们会深入Playwright的核心API,看看怎么定位元素、操作页面、处理弹窗——这些都是电商运营中天天要用到的技能。
先别急着往下翻,把你刚才的脚本多跑几遍,改改网址、改改关键词,玩熟了再说。