初始化项目 v2.0:中国邮政揽收系统自动填单工具
基于 HTTP API + Node.js token bridge 方案,不依赖浏览器自动化。
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
echo "============================================"
|
||||
echo " PickupAuto Build Script (HTTP mode)"
|
||||
echo "============================================"
|
||||
echo
|
||||
|
||||
# Check dependencies
|
||||
command -v python3 >/dev/null 2>&1 || { echo "[ERROR] Python 3.10+ required"; exit 1; }
|
||||
command -v node >/dev/null 2>&1 || { echo "[ERROR] Node.js 18+ required"; exit 1; }
|
||||
command -v npm >/dev/null 2>&1 || { echo "[ERROR] npm required"; exit 1; }
|
||||
|
||||
# Check uv
|
||||
if ! command -v uv &>/dev/null; then
|
||||
echo "[INFO] Installing uv..."
|
||||
pip install uv
|
||||
fi
|
||||
|
||||
echo "[1/4] Installing Python dependencies..."
|
||||
uv sync
|
||||
|
||||
echo "[2/4] Installing token bridge dependencies..."
|
||||
cd token_bridge
|
||||
npm install
|
||||
cd ..
|
||||
|
||||
echo "[3/4] Cleaning old build..."
|
||||
rm -rf dist build
|
||||
|
||||
echo "[4/4] Building with PyInstaller..."
|
||||
uv run pyinstaller \
|
||||
--onefile \
|
||||
--windowed \
|
||||
--name "PickupAuto" \
|
||||
--add-data "config.json:." \
|
||||
--add-data "pickup.ico:." \
|
||||
--add-data "token_bridge:token_bridge" \
|
||||
--hidden-import=openpyxl \
|
||||
--hidden-import=requests \
|
||||
main.py
|
||||
|
||||
cp config.json dist/config.json 2>/dev/null || true
|
||||
|
||||
echo
|
||||
echo "============================================"
|
||||
echo " Build complete!"
|
||||
echo " Output: dist/PickupAuto"
|
||||
echo
|
||||
echo " Requirements for end users:"
|
||||
echo " - Node.js 18+ (for security token computation)"
|
||||
echo " - Access to internal network (10.4.188.1)"
|
||||
echo "============================================"
|
||||
Reference in New Issue
Block a user