playwright怎么安装

时间:2025-10-06 02:16:04  阅读量:  分类:标签:

请注意:学习playwright、需要你有Python的基础知识。html和css略微懂就可以。

如果你是小白,请移步至:python基础语法教程

要安装 Playwright 的 Python 版本,只需按照以下步骤操作,适用于 Windows、macOS 和 Linux 系统:

步骤 1:确认 Python 环境

Playwright 要求 Python 版本为 3.8 及以上。先检查本地 Python 版本,在终端 / 命令提示符中运行:

python --version  # 或 python3 --version(macOS/Linux)

如果版本低于 3.8,需要先升级 Python(推荐使用 Python 官网 下载最新版)。

步骤 2:安装 Playwright 包

使用 Python 的包管理工具 pip 安装 Playwright 核心库。在终端 / 命令提示符中运行:

pip install playwright  # 或 pip3 install playwright(macOS/Linux)

步骤 3:安装浏览器二进制文件

Playwright 需要内置的浏览器(Chromium、Firefox、WebKit)才能运行,安装完成后需执行以下命令下载这些浏览器:

playwright install

这个命令会自动根据你的操作系统下载适配的浏览器(无需手动安装 Chrome 等),默认会安装全部三种浏览器。如果只需特定浏览器(例如仅 Chromium),可以指定:

playwright install chromium  # 仅安装 Chromium

playwright 代码演示(懂大概意思就行):案例1、学习网址:/stock.html

#引入playwright 同步api 同步api里面的 同步playwright的一个函数功能
from playwright.sync_api import sync_playwright

input('1....')
# 启动一个 playwright driver 进程、
# 启动playwright的sync_playwright()功能的start方法。
# driver 进程是一个javascriber nodjs运行的一个程序,可以在任务管理器里找到这个进程。
p = sync_playwright().start()  #start 同样会返回一个playwright的一个值,
input('2....')
# 启动浏览器,返回 Browser 类型对象p.launch、headless=False浏览器可以在界面运行、headless=True,浏览器不在界面运行,在把结果赋值给browser
browser = p.chromium.launch(headless=False)
input('3....')
#对象browser.new_page()打开一个新的浏览器标签,然后把值返回出来给变量Page
page = browser.new_page()
#对象page.goto、去打开你想访问的网址。
page.goto(r"E:\playwright\stock.html")
print(page.title())  # 打印网页标题栏
# 输入通讯,点击查询。这是定位与操作,是自动化重点,后文详细讲解
page.locator('#kw').fill('通讯')  # 输入通讯
page.locator('#go').click()  # 点击查询

# 打印所有搜索内容、当前不会打印到程序上、不用管后续在学。
lcs = page.locator(".result-item").all()
for lc in lcs:
    print(lc.inner_text())   #后续在讲

input('4....')
# 关闭浏览器
browser.close()
input('5....')
# 关闭 playwright driver 进程
p.stop()

如果你想启动其他内置驱动的浏览器

# 启动firefox浏览器
browser = p.firefox.launch(headless=False)

# 启动webkit浏览器
browser = p.webkit.launch(headless=False)

如果你不想用playwright内置的浏览器,想用你自己本电脑安装的浏览器。

# 加上 executable_path参数
browser = p.chromium.launch(headless=False, 
executable_path='c:\\Program Files\\Google\\Chrome\\Application\\chrome.exe')

案例:使用本地官方的chrome浏览器(以谷歌浏览器为例)学习网址:/stock.html

#引入playwright 同步api 同步api里面的 同步playwright的一个函数功能
from playwright.sync_api import sync_playwright

input('1....')
# 启动一个 playwright driver 进程、
# 启动playwright的sync_playwright()功能的start方法。
# driver 进程是一个javascriber nodjs运行的一个程序,可以在任务管理器里找到这个进程。
p = sync_playwright().start()  #start 同样会返回一个playwright的一个值,
input('2....')
#【仅修改了这里】启动浏览器,返回 Browser 类型对象p.launch、headless=False浏览器可以在界面运行、headless=True,浏览器不在界面运行,在把结果赋值给browser
browser = p.chromium.launch(headless=False,executable_path='c:\\Program Files\\Google\\Chrome\\Application\\chrome.exe')
input('3....')
#对象browser.new_page()打开一个新的浏览器标签,然后把值返回出来给变量Page
page = browser.new_page()
#对象page.goto、去打开你想访问的网址。
page.goto(r"E:\playwright\stock.html")
print(page.title())  # 打印网页标题栏
# 输入通讯,点击查询。这是定位与操作,是自动化重点,后文详细讲解
page.locator('#kw').fill('通讯')  # 输入通讯
page.locator('#go').click()  # 点击查询

# 打印所有搜索内容、当前不会打印到程序上、不用管后续在学。
lcs = page.locator(".result-item").all()
for lc in lcs:
    print(lc.inner_text())   #后续在讲

input('4....')
# 关闭浏览器
browser.close()
input('5....')
# 关闭 playwright driver 进程
p.stop()

playwright默认启动的是无痕模式,为了避免往硬盘里面写入数据。

案例1、代码的简化版写法:with写法。

from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch(headless=False)
    page = browser.new_page()
    page.goto(r"E:\playwright\stock.html")
    print(page.title())
    page.locator('#kw').fill('通讯\n')
    page.locator('#go').click()
    # 打印所有搜索内容、当前不会打印到程序上、不用管后续在学。
    lcs = page.locator(".result-item").all()
    for lc in lcs:
        print(lc.inner_text())
    browser.close()