Metadata-Version: 2.4
Name: qcc-phone-lookup
Version: 0.5.0
Summary: 企查查号码查企业 — WorkBuddy 销售场景：扫码登录 + 号码查公司名/统一社会信用代码 + 入库 localCRM
Author: yuxia
License: MIT
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Provides-Extra: headless
Requires-Dist: playwright>=1.40.0; extra == "headless"

# qcc-phone-lookup

企查查号码查企业 — 销售在手机 WorkBuddy 里，发一张带号码的照片/截图或一串号码，
自动查出对应的**公司名称 + 统一社会信用代码**，并入库 localCRM。

---

## 部署指南（WorkBuddy 里操作）

### 第一步：安装（只做一次）

```python
pip install --upgrade qcc-phone-lookup playwright
python -m playwright install chromium
```

每行单独执行一次，等它跑完再执行下一行。

### 第二步：装技能（只做一次）

把本仓库里的 `qcc_phone_lookup/skills/qcc-phone-lookup/SKILL.md` 内容发给主智能体，
让它保存为技能目录下的 `qcc-phone-lookup/SKILL.md`（例如 `~/.workbuddy/skills/qcc-phone-lookup/SKILL.md`，
具体路径以 workbuddy 技能目录为准）。

### 第三步：登录企查查（只做一次）

在 workbuddy 里说：

> 登录企查查

它会执行 `qcc-login-qr` 生成二维码（`browser_data/qrcode.png`），
把二维码发给你 → 用企查查 App / 微信扫一下 → 告诉它扫完了，
它执行 `qcc-login-confirm` 保存登录态。看到 `登录态已保存` 就成功了。

登录态存在当前目录的 `browser_data/`，workspace 持久，之后不用重复登录（过期再扫一次）。

### 第四步：日常使用

在钉钉里给机器人：

- **发一张带号码的照片/截图** → 自动识别号码并查询
- **直接发一串号码** → 直接查询

查到后返回公司名称 + 统一社会信用代码，并入库 localCRM。
一个号码对应多家公司时会让你确认是哪一家。

---

## 日常操作总结

| 做什么 | 怎么做 | 多久一次 |
|--------|--------|----------|
| 查号码是哪家公司 | 钉钉里发号码/照片 | 每天 |
| 登录过期了 | 跟它说"登录企查查"，重新扫码 | 偶尔 |
| 查工商信息 | 提供企查查 API Key 给它 | 需要时 |

---

## 手动命令参考

```bash
qcc-login-qr          # 生成登录二维码（截图即返回，浏览器保持存活）
qcc-login-confirm     # 扫码后确认登录，保存登录态
qcc-lookup 13800138000  # 查询号码对应的企业，输出 JSON
qcc-login             # 一步式登录（= 上面两条合一）
```

**注意：所有命令必须在同一个工作目录下执行**，登录态在 `./browser_data/`。

---

## 常见问题

**Q: 提示"未找到登录态"？**
A: 还没登录或登录过期了，走第三步重新扫码。

**Q: 查询返回空结果？**
A: 确认号码是纯数字、没打错；再确认登录态没过期。

**Q: 被企查查风控拦截（405）？**
A: 查询太频繁了，隔几分钟再试；持续被拦就重新扫码登录。

**Q: 换了工作目录就提示没登录？**
A: 登录态存在原目录的 `browser_data/`，回到原目录执行命令即可。

---

## 开发者

本地构建：

```bash
pip install build
python -m build          # 产出在 dist/
pip install dist/qcc_phone_lookup-0.5.0-py3-none-any.whl
```

## License

MIT
