核心用法
link-checker 是一款基于 Python3 urllib 的轻量级链接检测工具,无需外部依赖即可运行。核心功能包括单页链接检查(check)、递归爬取(crawl)、定向报告生成(report/broken/redirects)以及批量处理(batch)。用户可通过 --depth 控制爬取深度,--timeout 设置请求超时,--format 指定输出格式(text/json/csv/html),并支持 --concurrent 并发检测提升效率。
显著优点
1. 零依赖部署:纯 Python3 标准库实现,无需 pip 安装,适合各类受限环境
2. 状态分类清晰:将链接划分为 OK、Redirect、Broken、Error、Timeout、Failed 六类,便于优先级处理
3. 灵活过滤机制:支持内外链分离检测(--internal-only/--external-only)、正则排除(--exclude)及 verbosity 控制
4. 多场景覆盖:从快速摘要(summary)到完整 HTML 报告(report),满足开发调试与正式审计双重需求
潜在局限
- 无 JavaScript 渲染:无法检测 SPA 框架动态生成的链接
- 标准库限制:urllib 相比 requests/aiohttp 功能精简,HTTPS 证书验证、高级重定向策略配置有限
- 反爬风险:固定并发与默认 User-Agent 易被目标站点限流,需手动配置
--user-agent和--concurrent - 无认证支持:缺少 Cookie/Token 注入能力,无法检测登录态保护页面
适合人群
- 网站运维人员定期 SEO hygiene 检查
- 开发者上线前的链接完整性验证
- 内容管理团队批量审计外链有效性
常规风险
工具主动向目标 URL 发起 HTTP 请求,存在被目标服务器识别为爬虫而封禁 IP 的风险;递归爬取时若深度设置过高或目标站点存在无限重定向,可能导致网络资源耗尽。建议在受控环境使用,并合理设置 --timeout 与 --concurrent 参数。