有时候我们使用 web 自动化程序做爬虫,奈何服务器可能安装不了对应的浏览器进行操作。 browserless 致力于解决这个问题。

Web browser automation built for everyone, and loved by developers.

16696919048334

browserless 支持常见的 web 自动化应用。例如 Puppeteer、Selenium 和 Playwright。

我们安装好 docker 后,运行此命令,就能启动 Chrome 无头浏览器了。

docker run -d -p 3000:3000 -e "MAX_CONCURRENT_SESSIONS=10" browserless/chrome

如果是第一次使用,会自动安装最新版。

我是用的是 Playwright,在 Playwright 的代码中只要做如下修改即可。

# browser = playwright.chromium.launch(headless=True)
browser = playwright.chromium.connect_over_cdp("ws://localhost:3000")
context = browser.new_context()
page = context.new_page()
page.goto(url)

这样修改代码以后,运行起来和本地使用playwright install安装的驱动运行无异。对于网站有限制的,运行起来还是差点意思。比如我主要用playwright跑问卷星的代码,看截图好像是无法点击提交按钮。很奇怪。

最后修改:2024 年 03 月 19 日
本站福利|微信扫描二维码,永久享受 96 折充话费电费