71 lines
1.9 KiB
Markdown
71 lines
1.9 KiB
Markdown
# lawyers-common-sites
|
||
|
||
从 `/www/wwwroot/lawyer` 中抽离出的 `common_sites` 独立项目。
|
||
|
||
## 目录
|
||
|
||
- `common_sites/`: 站点采集脚本
|
||
- `request/`: 代理配置
|
||
- `utils/`: 公共工具
|
||
- `Db.py`: 数据库封装
|
||
- `config.py`: 项目配置
|
||
|
||
## 快速启动
|
||
|
||
```bash
|
||
cd /www/wwwroot/lawyers
|
||
python -m venv .venv
|
||
source .venv/bin/activate
|
||
pip install -r requirements.txt
|
||
bash common_sites/start.sh
|
||
```
|
||
|
||
## 拆分运行(直连/代理)
|
||
|
||
本仓库支持用环境变量 `PROXY_ENABLED` 在一次运行内强制开/关代理:
|
||
|
||
- **直连**:`PROXY_ENABLED=0`(不使用代理 IP)
|
||
- **代理**:`PROXY_ENABLED=1`(强制使用 `request/proxy_settings.json` 的代理配置)
|
||
- **默认**:不设置(跟随 `request/proxy_settings.json` 的 `enabled` 字段)
|
||
|
||
对应提供两套入口脚本:
|
||
|
||
```bash
|
||
# 直连(默认包含:大律师/大律师PC/找法网/法律快车)
|
||
bash common_sites/start_direct_twice_weekly.sh
|
||
|
||
# 代理(默认包含:华律/律图)
|
||
bash common_sites/start_proxy_weekly.sh
|
||
```
|
||
|
||
## cron 示例(每周两次直连 + 每周一次代理)
|
||
|
||
> 下面仅给示例,你可以按机器负载调整时间;日志会输出到 `common_sites/*.log`。
|
||
|
||
```bash
|
||
# 编辑定时任务
|
||
crontab -e
|
||
|
||
# 每周二、周五 02:10 直连跑一次
|
||
10 2 * * 2,5 cd /www/wwwroot/lawyers && bash common_sites/start_direct_twice_weekly.sh
|
||
|
||
# 每周日 03:20 走代理跑一次(你手动续费代理 IP)
|
||
20 3 * * 0 cd /www/wwwroot/lawyers && bash common_sites/start_proxy_weekly.sh
|
||
```
|
||
|
||
### 常用参数(可选)
|
||
|
||
```bash
|
||
# 限流(跨进程共享),直连可适当调高,代理建议保守
|
||
export PROXY_MAX_REQUESTS_PER_SECOND=8
|
||
|
||
# 代理连通性输出(部分脚本会打印测试信息)
|
||
export PROXY_TEST=1
|
||
```
|
||
|
||
## 说明
|
||
|
||
- 当前项目直接复用原项目数据库配置和代理配置。
|
||
- 采集依赖原库中的 `lawyer`、`area_new`、`area`、`area2` 等表。
|
||
- 日志默认输出到 `common_sites/*.log`。
|