Playwright 是一个现代的浏览器自动化工具,支持无头模式,性能优于 Selenium。官方开源地址:https://github.com/microsoft/playwright。支持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
。