# pachong_project **Repository Path**: pinghailinfeng/pachong_project ## Basic Information - **Project Name**: pachong_project - **Description**: 爬虫项目 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-08 - **Last Updated**: 2026-01-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 如何用 venv 管理 Python 环境依赖 ## 1. 创建虚拟环境 在项目根目录下执行: ```bash # Windows python -m venv venv # macOS/Linux python3 -m venv venv ``` 这会创建一个名为 `venv` 的虚拟环境文件夹。 ## 2. 激活虚拟环境 ```bash # Windows PowerShell .\venv\Scripts\Activate.ps1 # Windows CMD venv\Scripts\activate.bat # macOS/Linux source venv/bin/activate ``` 激活成功后,命令行前面会显示 `(venv)` 提示符。 ## 3. 安装依赖 ```bash # 安装单个包 pip install requests # 从 requirements.txt 安装 pip install -r requirements.txt ``` ## 4. 生成依赖文件 ```bash # 导出当前环境的所有依赖 pip freeze > requirements.txt ``` `requirements.txt` 内容示例: ``` requests==2.31.0 beautifulsoup4==4.12.2 lxml==4.9.3 ``` ## 5. 退出虚拟环境 ```bash deactivate ``` ## 6. 完整工作流程 ```bash # 1. 创建虚拟环境(首次) python -m venv venv # 2. 激活虚拟环境 .\venv\Scripts\Activate.ps1 # 3. 安装项目依赖 pip install requests beautifulsoup4 lxml # 4. 导出依赖(供他人使用或部署) pip freeze > requirements.txt # 5. 退出虚拟环境 deactivate # ============================================ # 团队成员或部署时的使用流程: # ============================================ # 1. 克隆项目后激活虚拟环境 .\venv\Scripts\Activate.ps1 # 2. 从 requirements.txt 安装所有依赖 pip install -r requirements.txt # 3. 开始开发/运行项目 ``` ## 7. 常用命令速查 | 命令 | 说明 | |------|------| | `python -m venv venv` | 创建虚拟环境 | | `.\venv\Scripts\Activate.ps1` | 激活虚拟环境 (Windows) | | `source venv/bin/activate` | 激活虚拟环境 (macOS/Linux) | | `pip install 包名` | 安装包 | | `pip install -r requirements.txt` | 批量安装依赖 | | `pip freeze > requirements.txt` | 导出依赖 | | `pip list` | 查看已安装的包 | | `deactivate` | 退出虚拟环境 | ## 8. 注意事项 - 激活虚拟环境后,所有 `pip install` 命令只会影响当前虚拟环境 - 将 `venv` 文件夹添加到 `.gitignore`,不要提交虚拟环境文件夹 - 只提交 `requirements.txt` 文件 - 不同项目应使用独立的虚拟环境,避免依赖冲突 - 建议使用 `包名==版本号` 固定版本,确保环境一致性