Playwright 是一个现代的浏览器自动化工具,支持无头模式,性能优于 Selenium。官方开源地址:github.com/microsoft/p…。支持mac,windows,linux:
使用起来也是非常简单:
安装 Playwright
pip install playwright
playwright install
代码示例
from playwright.sync_api import sync_playwright
url = "https://example.com"
with sync_playwright() as p:
browser = p.chromium.launch(headless=True)
page = browser.new_page()
page.goto(url, wait_until="networkidle") # 等待页面加载完成
text = page.content() # 获取整个 HTML
print(text)
browser.close()
📌 适用场景:类似 Selenium,但更高效,支持多浏览器(Chromium、Firefox、WebKit)。
总结
| 方法 | 适用情况 | 速度 | 难度 |
|---|---|---|---|
requests + BeautifulSoup |
静态网页,无需 JavaScript | 快 | 易 |
Selenium |
需要执行 JavaScript 动态加载 | 中等 | 中 |
Playwright |
高效处理动态网页 | 快 | 中 |
如果你不确定网页是静态还是动态的,可以先用 requests.get(url).text 看看返回的 HTML 是否包含目标内容。如果没有,就说明是动态网页,需要用 Selenium 或 Playwright。