Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
lizhuang 677f273244 refactor: 修改爬虫配置和亚马逊爬虫中的上传场景参数 3 дней назад
examples refactor: 优化商品信息示例中的日志输出 1 месяц назад
src refactor: 修改爬虫配置和亚马逊爬虫中的上传场景参数 3 дней назад
.gitignore feat: 初始化商品信息爬虫服务项目 1 месяц назад
LICENSE Initial commit 1 месяц назад
README.md feat: 完善商品信息爬虫服务功能 1 месяц назад
deploy.sh feat: 添加部署脚本和配置文件 1 месяц назад
ecosystem.config.js feat: 添加部署脚本和配置文件 1 месяц назад
nginx.conf feat: 添加部署脚本和配置文件 1 месяц назад
package-lock.json feat: 完善商品信息爬虫服务功能 1 месяц назад
package.json feat: 完善商品信息爬虫服务功能 1 месяц назад
template.html feat: 新增商品价格变动通知模板和商品信息示例 1 месяц назад

README.md

crawling-service

一个基于 Node.js 和 Playwright 的商品信息爬虫服务。

功能特性

  • 🚀 提供 RESTful API 接口
  • 🔍 支持商品信息爬取
  • 📸 支持商品截图功能
  • 🛡️ 内置安全防护
  • 📝 完整的日志记录
  • 🔄 模块化设计

技术栈

  • Node.js (v22.x)
  • Express.js - Web 框架
  • Playwright - 浏览器自动化
  • Winston - 日志管理
  • Jest - 单元测试
  • Helmet - 安全中间件
  • CORS - 跨域支持

项目结构

src/
├── config/         # 配置文件
├── controllers/    # 控制器
├── middlewares/    # 中间件
├── routes/         # 路由
├── services/       # 业务逻辑
├── utils/          # 工具函数
├── app.js          # 应用入口
└── server.js       # 服务器配置

安装说明

  1. 确保已安装 Node.js v22.x
  2. 克隆项目

    git clone http://dev.sohomall.jp:3000/lizhuang/crawling-service.git
    cd crawling-service
    
  3. 安装依赖

    npm install
    
  4. 配置环境变量

    cp .env.example .env
    # 编辑 .env 文件,配置必要的环境变量
    

运行服务

开发环境:

npm run dev

生产环境:

npm start

API 接口

商品信息查询

  • 请求方式:GET
  • 接口路径:/api/product/info
  • 参数:
    • url: 商品URL(必填)
    • needScreenshot: 是否需要截图(可选,默认 false)
    • platform: 平台(可选,目前仅支持 amazon)

开发规范

  • 遵循 SOLID 原则
  • 函数职责单一
  • 完整的异常处理
  • 清晰的代码注释
  • 统一的代码风格

测试

运行测试:

npm test

贡献指南

  1. Fork 项目
  2. 创建特性分支
  3. 提交变更
  4. 推送到分支
  5. 创建 Pull Request

许可证

ISC License