基于 Selenium 的动态渲染爬虫,可获取 JS 渲染后的完整网页数据,解决直接发起 HTTP 请求无法加载前端渲染内容的问题。
https://rc.carpcap.com/swagger-ui.html
代码中内置了 两套代理池,用以区分代理策略:
- AomesticProxyPool.class —— 国内代理池
- AbroadProxyPool.class —— 国外代理池
你需要自行实现其中的 replenish 方法(项目内已提供示例)。
项目提供了 Dockerfile,你可以在修改代码后重新构建镜像:
docker build -t render-crawler .直接运行容器:
docker run -di -p 10023:10023 --name render-crawler carpcap/render-crawler或使用 docker-compose:
version: '3.8'
services:
render-crawler:
image: carpcap/render-crawler
container_name: render-crawler
ports:
- "10023:10023"在浏览器访问:
http://127.0.0.1:10023/swagger-ui.html
注意:请求中的
url参数必须携带完整的http/https协议头。
示例:
{
"css": "#i_cecream",
"url": "https://www.bilibili.com"
}