1
This commit is contained in:
132
jd/QUICKSTART_UBUNTU.md
Normal file
132
jd/QUICKSTART_UBUNTU.md
Normal file
@@ -0,0 +1,132 @@
|
||||
# Ubuntu 快速入门指南
|
||||
|
||||
## 快速安装(推荐)
|
||||
|
||||
使用自动安装脚本:
|
||||
|
||||
```bash
|
||||
cd ~/project/jdpl # 进入项目目录
|
||||
chmod +x jd/setup_ubuntu.sh
|
||||
./jd/setup_ubuntu.sh
|
||||
```
|
||||
|
||||
脚本会自动:
|
||||
1. ✅ 检查并安装 Python3 和依赖
|
||||
2. ✅ 检查并安装 Chrome/Chromium
|
||||
3. ✅ 安装 Chrome 运行时依赖
|
||||
4. ✅ 创建 Python 虚拟环境
|
||||
5. ✅ 安装 DrissionPage
|
||||
6. ✅ 创建便捷运行脚本
|
||||
|
||||
## 手动安装
|
||||
|
||||
### 1. 安装 Chrome
|
||||
|
||||
```bash
|
||||
# Google Chrome (推荐)
|
||||
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
|
||||
sudo apt install -y ./google-chrome-stable_current_amd64.deb
|
||||
|
||||
# 或 Chromium
|
||||
sudo apt install -y chromium-browser
|
||||
```
|
||||
|
||||
### 2. 安装系统依赖
|
||||
|
||||
```bash
|
||||
sudo apt update
|
||||
sudo apt install -y python3 python3-pip python3-venv \
|
||||
libnss3 libatk-bridge2.0-0 libdrm2 libxkbcommon0 \
|
||||
libxcomposite1 libxdamage1 libxfixes3 libxrandr2 \
|
||||
libgbm1 libasound2
|
||||
```
|
||||
|
||||
### 3. 创建虚拟环境
|
||||
|
||||
```bash
|
||||
cd ~/project/jdpl
|
||||
python3 -m venv venv
|
||||
source venv/bin/activate
|
||||
pip install DrissionPage
|
||||
deactivate
|
||||
```
|
||||
|
||||
### 4. 运行脚本
|
||||
|
||||
```bash
|
||||
# 方式1: 使用便捷脚本(如果运行了 setup_ubuntu.sh)
|
||||
./run_logistics.sh
|
||||
|
||||
# 方式2: 手动运行
|
||||
source venv/bin/activate
|
||||
python jd/fetch_logistics_ubuntu.py
|
||||
deactivate
|
||||
```
|
||||
|
||||
## 常见问题
|
||||
|
||||
### Q: 遇到 "externally-managed-environment" 错误?
|
||||
|
||||
A: 这是 Ubuntu 22.04+ 的保护机制。**必须使用虚拟环境**,不要使用 `--break-system-packages`。
|
||||
|
||||
### Q: 虚拟环境在哪里?
|
||||
|
||||
A: 在项目目录下的 `venv` 文件夹。每次运行前需要激活:`source venv/bin/activate`
|
||||
|
||||
### Q: 找不到 Chrome?
|
||||
|
||||
A: 脚本会自动查找,也可以手动安装。常见路径:
|
||||
- `/usr/bin/google-chrome`
|
||||
- `/usr/bin/chromium-browser`
|
||||
|
||||
### Q: 无头模式 vs 有界面模式?
|
||||
|
||||
A: 在 `fetch_logistics_ubuntu.py` 中修改:
|
||||
```python
|
||||
USE_HEADLESS = True # 无头模式(服务器环境)
|
||||
USE_HEADLESS = False # 有界面模式(需要图形界面)
|
||||
```
|
||||
|
||||
### Q: 如何修改默认 URL?
|
||||
|
||||
A: 编辑 `fetch_logistics_ubuntu.py`,找到:
|
||||
```python
|
||||
tracking_url = "https://3.cn/2t-Iibig"
|
||||
```
|
||||
修改为你想要的 URL。
|
||||
|
||||
## 验证安装
|
||||
|
||||
运行测试:
|
||||
|
||||
```bash
|
||||
source venv/bin/activate
|
||||
python -c "
|
||||
from DrissionPage import ChromiumPage, ChromiumOptions
|
||||
import os
|
||||
chrome_path = '/usr/bin/google-chrome'
|
||||
if not os.path.exists(chrome_path):
|
||||
chrome_path = '/usr/bin/chromium-browser'
|
||||
options = ChromiumOptions()
|
||||
options.set_browser_path(chrome_path)
|
||||
options.headless(True)
|
||||
page = ChromiumPage(options)
|
||||
page.get('https://www.baidu.com')
|
||||
print('✅ 测试成功!')
|
||||
page.quit()
|
||||
"
|
||||
deactivate
|
||||
```
|
||||
|
||||
## 项目结构
|
||||
|
||||
```
|
||||
jdpl/
|
||||
├── jd/
|
||||
│ ├── fetch_logistics_ubuntu.py # Ubuntu 主脚本
|
||||
│ ├── setup_ubuntu.sh # 自动安装脚本
|
||||
│ └── UBUNTU_SETUP.md # 详细文档
|
||||
├── venv/ # Python 虚拟环境(运行脚本后创建)
|
||||
└── run_logistics.sh # 便捷运行脚本(运行 setup 后创建)
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user