Scrape Emails By URL

📧 智能本地爬虫 · 精准提取联系邮箱

本地爬虫批量提取网站联系邮箱,自动聚焦 contact/about 等高概率页面,支持多域名分组归因与 JSON 输出

收藏
7.1k
安装
1.7k
版本
0.1.3
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

find-emails 是一款基于 crawl4ai 的本地化网页爬虫工具,专用于从企业官网提取公开的联系邮箱。用户通过 CLI 传入一个或多个 URL,工具会智能深度爬取与"联系"高相关的页面(如 /contact、/about、/team),而非全站遍历,从而提升效率与准确度。

关键特性:

  • 智能 URL 过滤:默认仅追踪含 contact、support、about、team 等关键词的链接,可通过 scripts/url_patterns.json 自定义匹配规则
  • 多域名批量处理:支持同时输入多个网址,结果按域名分组,自动归一化 www 与非 www 变体,避免重复
  • 双模式输出:默认人类可读格式列出邮箱及来源路径;-j 参数输出结构化 JSON,便于 LLM 或下游程序解析
  • 离线二次提取--from-file 支持从本地缓存的 Markdown 文件提取邮箱,跳过网络爬取

典型命令:

python scripts/find_emails.py https://a.com https://b.com -j -o results.json

显著优点

1. 隐私合规:纯本地运行,数据不上传第三方,降低 GDPR/隐私政策风险
2. 精准高效:深度限制(默认 max-depth=2)+ URL 白名单,避免无意义页面消耗资源

3. 工程友好:JSON 输出带完整溯源路径(email → [page1, page2]),便于审计与验证

4. 扩展灵活:正则匹配规则外置到 JSON 文件,用户可按行业特性(如医疗、法律)自定义关键词

潜在缺点与局限性

  • 依赖浏览器环境:需安装 Playwright 及对应浏览器,首次配置较重(playwright install
  • 动态内容限制:部分现代网站邮箱通过 JavaScript 动态加载或图片/Canvas 形式呈现,正则提取可能遗漏
  • 反爬对抗:频繁爬取可能触发目标站点的速率限制或封禁,工具本身未内置代理池或请求延迟策略
  • 深度与覆盖率权衡:默认 max-pages=25 可能遗漏深层页面,调大参数则时间成本线性上升

适合人群

  • B2B 销售/市场团队:批量收集潜客官网的联系邮箱
  • 开源项目维护者:整理社区企业赞助商的联系方式
  • 安全研究员:合规范围内的资产信息收集(OSINT 前置步骤)
  • 数据分析师:构建特定行业的企业联系人数据集

常规风险

| 风险类型 | 说明 | 缓解建议 |
|---------|------|---------|
| 法律合规 | 部分司法管辖区(如欧盟 GDPR)对自动收集个人数据有严格限制 | 仅采集企业公共联系邮箱,避免抓取个人私人邮箱;遵守目标站点的 robots.txt 与 Terms of Service |
| 误用风险 | 输出结果若用于垃圾邮件群发,可能违反 CAN-SPAM 等反垃圾邮件法规 | 建立使用审批流程,输出数据加密存储,限制访问权限 |
| 技术风险 | 本地浏览器进程若解析恶意网页,存在供应链攻击或内存漏洞风险 | 在隔离环境(Docker/VM)中运行,及时更新 Playwright 与浏览器版本 |
| 数据质量 | 过时页面可能包含已失效邮箱,或正则误匹配非邮箱字符串 | 对关键邮箱进行 SMTP 验证或二次人工核验 |

Scrape Emails By URL 内容

scripts文件夹
手动下载zip · 5.2 kB
find_emails.pytext/plain
请选择文件