Headless Chrome 是 Chrome 浏览器的无界面形态,可以在不打开浏览器的前提下,使用所有 Chrome 支持的特性运行你的程序。相比于现代浏览器,Headless Chrome 更加方便测试 web 应用,获得网站的截图,做爬虫抓取信息等。
对于RobotBug而言Headless Chrome以一个公共资源,可以被其他服务所使用。
docker install chromedp/headless-shell
docker run -d -p 9222:9222 --rm --name headless-shell chromedp/headless-shell
docker exec -it headless-shell bash
chromedp/headless-shell 是基于Debian构建,缺少中文支持,会致使页面乱码
apt-get update
apt-get install locales
dpkg-reconfigure locales
访问:127.0.0.1:9222/json
[ {
"description": "",
"devtoolsFrontendUrl": "/devtools/inspector.html?ws=127.0.0.1:9222/devtools/page/73FB7B559C27B630B4A28DF008C2D68E",
"id": "73FB7B559C27B630B4A28DF008C2D68E",
"title": "",
"type": "page",
"url": "file:///bin/bash",
"webSocketDebuggerUrl": "ws://127.0.0.1:9222/devtools/page/73FB7B559C27B630B4A28DF008C2D68E"
} ][ {
"description": "",
"devtoolsFrontendUrl": "/devtools/inspector.html?ws=127.0.0.1:9222/devtools/page/73FB7B559C27B630B4A28DF008C2D68E",
"id": "73FB7B559C27B630B4A28DF008C2D68E",
"title": "",
"type": "page",
"url": "file:///bin/bash",
"webSocketDebuggerUrl": "ws://127.0.0.1:9222/devtools/page/73FB7B559C27B630B4A28DF008C2D68E"
} ]
go test -v headless_shell_test.go
项目地址:https://github.com/Ning-Qing/RobotBug
这次绝对不鸽!