浏览代码

上传文件至 ''

olin 4 周之前
父节点
当前提交
1a9b6cebef
共有 1 个文件被更改,包括 104 次插入0 次删除
  1. 104 0
      README.md

+ 104 - 0
README.md

@@ -0,0 +1,104 @@
+# 药品数据采集系统
+
+多平台药品/商品数据采集系统,覆盖淘宝、京东、小红书、饿了么闪购、药房网。
+
+## 子项目
+
+```
+project/
+├── xhs/           # 小红书商品采集(Android + OCR + AI)
+├── tbsg/          # 饿了么闪购店铺采集(OCR + 滑块验证码)
+└── spides/        # 淘宝 / 京东 / 药房网爬虫
+```
+
+---
+
+### 1. xhs — 小红书商品采集
+
+Android 自动化采集,uiautomator2 操控手机 + OCR 识别 + AI 分析页面,支持多设备多线程派单。
+
+**启动:**
+```bash
+cd xhs
+python start_run_xhs.py
+```
+
+**核心流程:**
+- 从数据库/手动配置拉取任务(药品关键词)
+- ADB 检测空闲设备,状态锁防冲突
+- 每个设备独立线程:打开小红书 → 搜索 → 滚动商品列表 → OCR 截图 → AI 提取价格/标题 → 写入数据库
+- 飞书通知 + 调度中心 API 上报
+
+**依赖:** `xhs/requirements.txt`(主要:uiautomator2, opencv-python, easyocr, DBUtils)
+
+---
+
+### 2. tbsg — 饿了么闪购店铺采集
+
+步骤驱动,OCR + AI 实现端到端自动化:打开 App → 搜索商品 → 滚动店铺列表 → 进入店铺 → 解析二维码获取商品链接。
+
+**启动:**
+```bash
+cd tbsg
+python main.py
+```
+
+**核心模块:**
+| 文件 | 作用 |
+|------|------|
+| `main.py` | 步骤编排(step1~step4) |
+| `steps/ocr.py` | OCR 识别封装 |
+| `steps/executor.py` | uiautomator2 安全执行器 |
+| `ai_helper.py` | DeepSeek AI 页面分类/坐标解析 |
+| `yzm/` | 滑块验证码/九宫格自动破解 |
+
+**验证码处理:** 模板匹配 + OCR 检测 → 自动调用滑块/九宫格破解,最多重试5次,失败等人工介入。
+
+---
+
+### 3. spides — 淘宝 / 京东 / 药房网爬虫
+
+**启动:**
+```bash
+# 淘宝
+cd spides
+python start_run_taobao.py
+
+# 京东
+python start_run_jd.py
+
+# 药房网
+python start_run_yaofangwang.py
+```
+
+**共用基础设施(`spides/commons/`):**
+| 模块 | 作用 |
+|------|------|
+| `collect_schedule_runner.py` | 通用调度循环 |
+| `scheduler.py` | 任务拉取 + 心跳 + 上报 |
+| `conn_mysql.py` | MySQL 连接池 |
+| `feishu_webhook.py` | 飞书通知 |
+| `config.py` | 设备 ID、账号配置 |
+
+**淘宝:** DrissionPage 浏览器自动化,搜索 → 翻页 → 提取商品列表
+**京东:** 浏览器自动化,API 拉取任务
+**药房网:** 固定任务列表循环
+
+---
+
+## 服务端依赖
+
+- MySQL 数据库 `drug_retrieve`(`120.24.26.308:3307`)
+- 调度中心 API(`scheduleapi.findit.ltd`)
+- 阿里云 OSS(`oss-cn-shenzhen`)
+- DeepSeek AI API(`ai-api.dfwy.tech`)
+- 飞书 Webhook
+
+---
+
+## 注意事项
+
+- 需要 Android 真机连接 ADB(小红书、饿了么)
+- 需要 Chrome 浏览器(淘宝 DrissionPage)
+- `spides/commons/config.py` 和 `xhs/spiders/xhs/xhs_config.py` 含敏感凭证,不要提交公开仓库
+- `xhs/spiders/xhs/main.py` 第78行数据库密码硬编码,建议改为环境变量