# phone **Repository Path**: python_90/phone ## Basic Information - **Project Name**: phone - **Description**: 手机归属地 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-09 - **Last Updated**: 2026-06-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 项目说明 本仓库使用 `uv` 工具管理 Python 虚拟环境和依赖。项目核心脚本 `app.py` 用于批量补全本地 `phone.db` 数据库中手机号的归属地信息。 --- ## 一、项目简介 | 内容 | 说明 | | --- | --- | | 主要功能 | 读取 `phone.db` 中 `phone` 记录,调用 360 手机号归属地接口,补全 `province`、`city`、`sp` 字段 | | 核心脚本 | `app.py` | | 数据库 | SQLite,文件名 `phone.db` | | 依赖库 | `gevent`、`requests`、`records` | | 处理方式 | 分页读取、协程并发请求 | --- ## 二、常用命令概览 | 场景 | 命令 | 说明 | | --- | --- | --- | | 创建虚拟环境 | `uv venv` | 创建 `.venv` 目录并初始化环境 | | 激活虚拟环境 | `.venv\Scripts\activate` | Windows 下激活当前虚拟环境 | | 安装依赖 | `uv pip install -r requirements.txt` | 根据 `requirements.txt` 安装项目依赖 | | 添加依赖 | `uv pip install ` | 安装新包到当前虚拟环境 | | 导出依赖 | `uv pip freeze > requirements.txt` | 更新 `requirements.txt` | --- ## 二、使用步骤 1. 创建虚拟环境 ```bash uv venv ``` 2. 激活虚拟环境(Windows) ```bash .venv\Scripts\activate ``` 3. 安装项目依赖 ```bash uv pip install -r requirements.txt ``` 4. 安装新依赖时 ```bash uv pip install ``` 5. 导出依赖到 `requirements.txt` ```bash uv pip freeze > requirements.txt ``` --- ## 三、依赖管理建议 - 开发时优先使用 `uv` 统一管理虚拟环境和 pip 操作。 - 若新增包后希望同步 `requirements.txt`,请使用 `uv pip freeze > requirements.txt`。 - 若遇到包版本冲突,可先删除 `.venv` 重新执行 `uv venv` 与依赖安装。 --- ## 四、旧方式对比 | 方案 | 优点 | 缺点 | | --- | --- | --- | | `uv` 管理 | 命令统一、环境隔离 | 需先安装 `uv` | | `pip + pipreqs` | 兼容性广 | 手动生成依赖、缺少环境管理 | 旧方式命令示例: ```bash pip install pipreqs pipreqs . --encoding=utf8 --force pip install -r requirements.txt ``` --- ## 五、备注 - 本项目推荐使用 `uv` 的方式维护项目环境。 - `requirements.txt` 应与项目代码同目录,便于依赖复现。