ENScanGo 实战:一条命令采集企业ICP备案、APP和公众号资产,批量导出Excel
【免费下载链接】ENScan_GO一款基于各大企业信息API的工具,解决在遇到的各种针对国内企业信息收集难题。一键收集控股公司ICP备案、APP、小程序、微信公众号等信息聚合导出。支持MCP接入项目地址: https://gitcode.com/GitHub_Trending/en/ENScan_GO
每周五要手动核对一批目标企业的 ICP 备案、微信公众号、APP 和子公司,你知道这要花几个小时。ENScanGo 是一款基于 Go 的企业信息聚合工具,把爱企查、天眼查、风鸟等多个数据源收进一个二进制里:给它一个公司名,它帮你把备案、APP、公众号、小程序、对外投资拉成一份 Excel。这篇文章按从 0 到生产的顺序走:配好凭据、跑通首条查询、上批量筛选,最后把它跑成服务并接进定时任务。
开工之前:配置文件里该填哪些凭据
这一节解决首次使用最容易卡住的问题:每个数据源要填什么凭据、填在哪里。
先拉代码并本地编译,Go 版本要求 1.22.1 及以上:
git clone https://gitcode.com/GitHub_Trending/en/ENScan_GO cd ENScan_GO go build -o enscan . # 编译出单文件二进制编译成功后用-v走一遍首次初始化,程序会生成config.yaml配置模板(模板定义见common/config.go),把各平台的 Cookie 填进去即可:
cookies: aiqicha: '' # 爱企查 Cookie tianyancha: '' # 天眼查 Cookie tycid: '' # 天眼查 CApi ID auth_token: '' # 天眼查 Token risk_bird: '' # 风鸟 Cookie qimai: '' # 七麦数据 Cookie app: miit_api: '' # ICP备案查询插件的 API 地址各数据源对应的-type取值和凭据位置如下:
| 数据源 | -type 取值 | 配置字段 |
|---|---|---|
| 爱企查(默认) | aqc | aiqicha |
| 天眼查 | tyc | tianyancha+tycid+auth_token |
| 风鸟 | rb | risk_bird |
| 七麦数据(插件) | qimai | qimai |
| ICP备案(插件) | miit | miit_api |
⚠️ 取 Cookie 时别用document.cookie,http-only 字段拷不出来,会导致登录态不完整;天眼查需要 Cookie、tycid、auth_token三处都填齐。个别数据源访问受限时,可以通过-proxy挂代理再试。
跑通第一条查询:从公司名到ICP与公众号的Excel
目标是用最少的参数跑通一次单企业查询,并看到落盘的 Excel。
配置好凭据后,直接用一个关键词发起查询,-delay 3表示每次请求间隔 3 秒:
./enscan -n 小米 -delay 3这条命令不指定字段时默认采集网站备案(ICP)、微博、微信公众号、APP 四类信息,结果默认输出到outs目录,打开就能看到按企业分组的表格。
如果只要其中几类,用-field指定,多个字段用逗号分隔:
./enscan -n 小米 -field icp,app -delay 3-field支持的全部取值如下,按需组合:
| 字段 | 采集内容 |
|---|---|
icp | 网站备案信息 |
weibo | 微博 |
wechat | 微信公众号 |
app | 应用信息 |
job | 招聘信息 |
wx_app | 微信小程序 |
copyright | 软件著作权 |
supplier | 供应商(经招标书确定) |
跑完后你会得到一张覆盖上述资产维度的企业信息聚合表:
⚠️ 如果查询过程异常退出,程序目录会留下enscan.gob断点缓存。恢复未完成的批量任务时它有用,但要重新查新的企业时记得先手动删掉,否则结果会被旧缓存干扰。
扩到批量:用持股比例和深度做分层筛选
当目标从一家企业变成几十家,你需要批量输入和分层过滤,这一节解决这两件事。
先玩透单企业的高级参数。-invest按对外投资占比筛选,--branch带上分支机构,-deep往下钻孙公司层级(需搭配-invest使用):
# 只要 100% 持股的对外投资公司 ./enscan -n 小米 -invest 100 -delay 3 # 持股大于 51% 的子公司和分支机构,只采 ICP,下钻 2 层到孙公司 ./enscan -n 小米 -field icp -invest 51 --branch --deep 2 -delay 3第二条命令跑完,导出的就是"控股链条上的资产"视角:哪些子公司挂了哪些备案站点。换数据源也一样简单,-type可传单个值或逗号组合,比如-type aqc,tyc同时走爱企查和天眼查;插件渠道则写-type aqc,miit。
批量场景把企业名单按行放进文本文件,一行一家,再用-f读入:
echo "小米" > companies.txt echo "华为技术有限公司" >> companies.txt ./enscan -f companies.txt -out-dir ./output -delay 3批量模式下几个高频开关值得记住:
-is-pid:名单文件里装的不是名字而是公司 PID 时打开-no-merge:默认批量结果是合并导出一份,加上它则每家单独导出-branch-filter <正则>:名称匹配正则的分支机构和子公司直接跳过,防止数据量爆炸-is-group:关键词按"集团"查询时使用
💡 大批量任务建议把-delay设为-1,程序会在 1~5 秒之间随机延迟,比固定间隔更不容易触发频控。
跑成服务:API 与MCP两种接入方式
命令行只是起点,其他工具和 AI 代理怎么调用 ENScanGo 的查询能力?程序内置了两种服务模式,监听地址都在config.yaml里可改。
API 模式默认监听 31000 端口,启动后就是一个标准的 HTTP 服务:
./enscan --api # 默认监听 :31000然后用任意 HTTP 客户端查询,参数和命令行基本一一对应:
curl "http://localhost:31000/api/info?name=小米&field=icp,app&invest=50"/api/info支持的查询参数如下,返回结构化 JSON,加output=true可直接下载 Excel:
| 参数 | 说明 |
|---|---|
name | 完整公司名称或 PID |
type | 数据源,取值与命令行一致 |
field | 筛选指定信息字段 |
invest | 投资比例阈值 |
depth | 下钻几层公司 |
branch | 是否收集分支机构 |
output | 为 true 时导出 Excel 下载 |
如果不想走调度逻辑,还有 pro 模式直接命中数据源,type必传,例如GET /api/pro/advance_filter?name=小米&type=aqc,速度更快,适合对内部接口已经熟悉的场景。
MCP 模式则面向 AI 工具。启动后服务以 SSE 形式暴露在本地 8080 端口:
./enscan --mcp # 默认监听 http://localhost:8080在支持 MCP 的客户端(以 Cherry Studio 为例)里新建服务器,类型选 SSE,地址填http://localhost:8080/sse,保存后能看到 ENScanGo 注册的按关键词查企业、按 PID 取信息这几个工具:
配置完成后回到对话里直接让模型查企业,它会自动调用对应工具并返回聚合结果:
⚠️ 两种模式都默认只监听本地,API 服务实时查询、无鉴权,不要把它暴露到公网。
接进生产:从手动跑一次到每天自动跑
最后一步是把"手动敲一次命令"变成"每天自己跑",分三步走。
第一步,用定时任务固化批量流程,crontab 里加一行,每天凌晨 2 点自动扫一遍名单:
# crontab -e 0 2 * * * cd /opt/enscan && ./enscan -f targets.txt -out-dir reports -delay -1跑几天后reports目录里会按天积累结果,直接作为审计留档。
第二步,出问题时用-debug打开详细日志定位是凭据过期、字段缺数据还是被频控:
./enscan -n 小米 -debug -delay 3同时用-timeout调整单请求超时(默认 1 分钟),网络环境不稳时配合-proxy走代理。
第三步,管好凭据和频率:Cookie 定期轮换、批量任务避开工作高峰、-delay常开,账号异常的概率会低很多。
如果现有的字段和输出格式不满足需求,扩展点很清晰:统一接口定义在interface/enscan.go,新数据源按"查询逻辑 + 字段映射"的模式加进对应源包即可;新的导出格式则在common/output.go的输出链路上加工。
- 先拿爱企查(默认
aqc)把单企业查询跑通,确认 Excel 里字段齐全 - 再上
-invest、-deep、-branch-filter做筛选,把数据量压到可审计的范围 - 稳定后开
--api或--mcp,把 ENScanGo 挂到团队的日常流程里
【免费下载链接】ENScan_GO一款基于各大企业信息API的工具,解决在遇到的各种针对国内企业信息收集难题。一键收集控股公司ICP备案、APP、小程序、微信公众号等信息聚合导出。支持MCP接入项目地址: https://gitcode.com/GitHub_Trending/en/ENScan_GO
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考