
atomicptr/crab该Docker镜像封装了一个多功能URL爬取工具,旨在从指定来源(如站点地图(sitemap)或URL列表文件)批量获取URL。适用于需要高效、便捷地收集多个URL的场景,提供灵活的爬取能力以满足不同来源的URL获取需求。
通过Docker运行容器,指定输入来源类型和路径,即可启动URL爬取:
bashdocker run --rm -v /本地输入输出目录:/data [镜像名称] --source-type <来源类型> --input /data/<输入文件> --output /data/<输出文件>
| 参数 | 类型 | 描述 | 是否必填 |
|---|---|---|---|
--source-type | 字符串 | 指定输入来源类型,支持sitemap(站点地图)或url-list(URL列表文件) | 是 |
--input | 字符串 | 输入文件在容器内的路径(需通过-v挂载本地目录至容器内目录,如/data) | 是 |
--output | 字符串 | 输出文件在容器内的路径(结果将保存至该文件,默认输出至标准输出) | 否 |
--concurrency | 整数 | 爬取并发数,控制同时处理的URL数量(默认值:5) | 否 |
假设本地当前目录下有站点地图文件sitemap.xml,需将结果保存至urls.txt:
bash# 挂载当前目录至容器的/data目录,指定来源类型为sitemap,输入文件为/data/sitemap.xml,输出至/data/urls.txt docker run --rm -v $(pwd):/data [镜像名称] --source-type sitemap --input /data/sitemap.xml --output /data/urls.txt
本地当前目录下有URL列表文件url_list.txt(每行一个URL),直接查看爬取结果:
bash# 挂载当前目录至/data,指定来源类型为url-list,输入文件为/data/url_list.txt,不指定输出(默认标准输出) docker run --rm -v $(pwd):/data [镜像名称] --source-type url-list --input /data/url_list.txt
-v参数挂载本地目录时,确保本地目录有读写权限,避免容器内文件操作失败--concurrency参数调整并发数,根据网络环境和目标服务器限制合理设置,避免请求过于频繁导致被限制访问manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务