Playwright Python浏览器自动化实战

pythonimport 复制代码
from playwright.async_api import async_playwright, Page, BrowserContext

async def main():
    # 启动浏览器
    async with async_playwright() as p:
        browser = await p.chromium.launch(headless=False)
        context = await browser.new_context()
        page = await context.new_page()

        # 导航到指定URL
        await page.goto("https://example.com")

        # 等待页面加载完成
        await page.wait_for_load_state("networkidle")

        # 截圖
        await page.screenshot(path="screenshot.png", full_page=True)

        # 填寫表單
        await page.fill("input[name='username']", "test_user")
        await page.fill("input[name='password']", "test_pass")

        # 點擊登錄按鈕
        await page.click("button[type='submit']")

        # 提取數據
        title = await page.title()
        text_content = await page.text_content("h1")

        # 關閉資源
        await page.close()
        await context.close()
        await browser.close()

# 運行異步主函數
asyncio.run(main())

核心操作说明

操作 方法 用途
启動瀏覽器 launch() 初始化瀏覽器實例
新建上下文 new_context() 创建独立的浏览器会话,支持设备模拟、权限设置等
新建页面 new_page() 打开新页面进行操作
导航到URL goto() 跳转到目标网页
等待页面加载 wait_for_load_state() 等待页面达到特定状态(如 networkidle
截圖 screenshot() 截取当前页面截图
填寫表單 fill() 填写输入框内容
點擊按鈕 click() 模拟点击操作
提取文本 text_content() 获取页面中指定元素的文本内容
關閉資源 close() 释放浏览器和页面资源

以上代码示例展示了如何使用 Playwright Python 实现浏览器的启动与页面基本操作。通过异步 API 可以高效地处理现代网页应用,适用于自动化测试、爬虫等多种场景。


参考来源

相关推荐
qq_4260039621 小时前
启动playwright录制codegen生成自动化测试脚本
python·自动化
其实防守也摸鱼1 天前
内网穿透与反向代理:原理、工具与实战指南
android·大数据·运维·安全·网络安全·自动化·渗透
森叶1 天前
用远程调试端口自动化 Chrome 应用商店发布:做法、三个真坑,以及你必须知道的风险
自动化
懂软件的胡子个哥1 天前
微信机器人为什么需要“回复候选”而不是所有 AI 内容直接发送
运维·微信·自动化·wechatapi·个人微信号二次开发
jingli91 天前
多平台多店铺客服怎么统一接待?千牛/拼多多/抖音/京东/闲鱼/微信/快手切窗口太累,一个后台集中接管的七步落地方案(2026 实操版)
人工智能·自动化·用户运营
坚定信念,勇往无前1 天前
Playwright 的本质
自动化·网络爬虫
乐橙开放平台2 天前
从「多套客户端」到一套开放能力:乐橙视频监控能力复盘
笔记·物联网·自动化·音视频·智能家居
志栋智能2 天前
集成是关键:让巡检超自动化融入现有工具链
运维·服务器·数据库·架构·自动化