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 可以高效地处理现代网页应用,适用于自动化测试、爬虫等多种场景。


参考来源

相关推荐
Jenni see41 分钟前
服装厂裁剪自动化怎么搞?自动铺布+激光裁床+六轴机械手裁片分拣,省料省人的实战指南
运维·自动化
是真的小外套6 小时前
网络安全实战第17期:自动化检测误报漏报真相
安全·web安全·自动化
天远API7 小时前
零信任架构实战:基于天远劳动仲裁信息查询构建自动化灵活用工劳务派遣人员准入背调网关
运维·人工智能·架构·自动化
GJGCY7 小时前
金融AI Agent安全如何评估?数据出站、身份映射、参数绑定与审计追踪机制
人工智能·经验分享·安全·ai·金融·自动化·智能体
快乐的熊二8 小时前
每天自动领积分:Trae CN + WorkBuddy 签到自动化
运维·自动化
znnnk8 小时前
【Fetch】AI 自动化中的应用——从接口请求到数据获取
运维·自动化
2501_927283589 小时前
同样是自动化立库,堆垛机和四向车差别在哪里?
运维·自动化
虎鲸不是鱼9 小时前
AI 自动化逆向(三十六)先找不加密的部分
人工智能·自动化·大模型·逆向·ai逆向
ai_coder_ai9 小时前
在自动化脚本中调用大语言模型
语言模型·自动化·dubbo
饭后一颗花生米9 小时前
GitHub Actions 自动化:5 个真实运维提效案例
运维·自动化·github