Sem descrição

01495251 3e09ab931a 1.uat数据库更新 há 1 mês atrás
crossborder 3e09ab931a 1.uat数据库更新 há 1 mês atrás
.gitignore ac9ccddc44 打包配置修改 há 1 mês atrás
README.md a1aaa69055 crawl fix cli 2 exe há 1 mês atrás
pyproject.toml 5b60a7d6cf 导出sql过滤id主键 há 1 mês atrás

README.md

🌐 跨境数据采集脚本 (crossborder)

这是一个用于跨境电子商务平台数据采集的 Python 脚本工具集。支持多个省市(如山东、广东、河南等)的数据下载与清洗入库操作,适用于自动化数据抓取、数据治理及数据库导入等场景。

🧩 项目概述

该项目使用了以下技术栈:

  • 🕸️ Selenium/Scrapy:网页数据采集
  • 📊 Pandas/OpenPyXL:数据处理与 Excel 操作
  • 🔐 Requests/PyCryptodome:API 请求与加密
  • 🛠️ Poetry:依赖管理 & 构建发布

📁 项目结构

crossborder/
├── crossborder/
│   ├── anhui/
│   ├── fujian/
│   ├── guangdong/
│   ├── hebei/
│   ├── henan/
│   ├── jiangsu/
│   ├── quanguo/
│   ├── shandong/
│   ├── zhejiang/
│   ├── utils/
│   ├── data_cleaning_to_db.py
│   └── cli.py
├── pyproject.toml
└── README.md

🗂️ 输出文件路径

crossborder/
└── downloads/
    └── shandong/
        └── data_*.xlsx

⚙️ 安装指南

# 1. 安装Poetry
curl -sSL https://install.python-poetry.org | python3 -

# 2. 克隆仓库
git clone http://42.192.203.166:3000/wyp/crossborder.git
cd crossborder

# 3. 安装依赖
poetry install

🚀 使用方法

# 省级数据采集
poetry run run-shandong       # 启动山东省数据采集
poetry run run-guangdong      # 启动广东省省级数据采集
poetry run run-henan          # 启动河南省数据采集
poetry run run-fujian         # 启动福建省数据采集
poetry run run-anhui          # 启动安徽省数据采集
poetry run run-jiangsu        # 启动江苏省数据采集
poetry run run-hebei          # 启动河北省数据采集
poetry run run-zhejiang       # 启动浙江省数据采集

# 特殊命令
poetry run run-guangdong-city # 启动广东省城市级数据采集
poetry run run-quanguo        # 启动全国性平台数据采集
poetry run run-total-city     # 清洗各省市数据并统一入库


⚠️ 注意事项

  1. downloads/目录打包时排除,不会包含在最终发布包中
  2. 需要Python ≥3.10环境
  3. Chrome浏览器需与WebDriver版本匹配
  4. 需要配置数据库连接信息才能使用入库功能

📦 打包发布

# 构建源码包
poetry build --format sdist

# 生成文件位置
dist/crossborder-*.tar.gz

# 也可构建wheel包
poetry build --format wheel

#打包exe文件 pip install pyinstaller
pyinstaller --name=run-crossborder --onefile --add-data "crossborder;crossborder" --hidden-import=crossborder.utils.log --hidden-import=crossborder.shandong.selenium_shandong_download --hidden-import=crossborder.guangdong.selenium_guangdong_download --hidden-import=crossborder.guangdong.selenium_guangdong_city --hidden-import=crossborder.henan.selenium_henan_download --hidden-import=crossborder.fujian.selenium_fujian_download --hidden-import=crossborder.anhui.crawl_gov_anhui_full --hidden-import=crossborder.jiangsu.crawl_gov_jiangsu_full --hidden-import=crossborder.hebei.crawl_gov_hebei_full --hidden-import=crossborder.zhejiang.crawl_gov_zhejiang_full --hidden-import=crossborder.quanguo.selenium_download crossborder/cli.py

pyinstaller --name=export-sql --onefile --hidden-import=crossborder.utils.log --hidden-import=crossborder.utils.db_helper --hidden-import=crossborder.utils.constants --hidden-import=sqlalchemy --hidden-import=sqlalchemy.dialects.mysql export_sql.py

📋 打包配置

  1. 排除目录:所有downloads/目录
  2. 打包格式:同时支持wheel和sdist
  3. 入口命令:通过pyproject.toml中的tool.poetry.scripts定义

📚 开发者信息

  • 作者:王玉鹏 (Wang Yupeng), 张帆 (Zhang Fan)
  • 邮箱:wangyupeng@yto.net.cn
  • 许可证:MIT License
  • Python版本:≥3.10
  • 依赖管理:Poetry

🔧 核心依赖库

库名 版本要求 功能说明
Selenium ≥4.32.0 自动化浏览器操作
Requests ≥2.32.3 HTTP 请求
Pandas ≥2.2.3 数据分析与处理
Scrapy ≥2.13.0 网络爬虫框架
BeautifulSoup ≥4.13.4 HTML 解析器
lxml ≥5.4.0 XML/HTML 解析
Click ≥8.1.8 CLI 命令行解析
SQLAlchemy ≥2.0.41 ORM 数据库操作
PyCryptodome ≥3.23.0 加密算法支持