教你如何用express+mysql+cheerio+swaggerUI開發爬蟲專案API介面

coding發表於2022-05-15
專案基於express+sequelize+mysql+express-validator
基於node+express爬蟲 API介面專案,包括全國高校資訊、成語詩歌、星座運勢、歷史的今天、音樂資料介面、圖片桌布、搞笑視訊、熱點新聞資訊 詳情介面資料

專案地址: https://github.com/ecitlm/Nod...

  • [x] express作為基礎框架
  • [x] sequelize操作mysql
  • [x] mysql儲存資料
  • [x] express-validator參數列單校驗
  • [x] 使用cheerio解析爬蟲頁面
  • [x] 整合ejs模板
  • [x] 整合swaggerUI介面文件
  • [x] nodemon專案開發動態熱更新
  • [x] dotenv管理配置系統引數
  • [x] 包含介面sign請求驗證
  • [x] log4js 錯誤日誌收集

環境要求

需要安裝node環境,mysql資料庫

部署執行

$ git clone https://github.com/ecitlm/Node-SpliderApi.git
$ npm install
#  start project dev
$ npm run dev
# starting prd
$ npm run prd
#localhost:3001

伺服器部署

在伺服器中使用 pm2node 服務進行程式守護
#啟動程式/應用
pm2 start npm --watch --name tools -- run prd
pm2 restart tools
pm2 stop tools
pm2 delete tools

資料庫

mysql中包含、唐詩300、成語、歷史的今天、星座運勢(聚合平臺資料-需要申請自己的APPCODE)、使用者表等資料
專案目錄bak-file資料夾可檢視

介面文件

啟動專案之後http://localhost:3001/api-docs/ 可檢視介面文件頁面,
api.png
api2.png

錯誤碼說明

狀態碼含義備註
200響應正常
1001引數無效、如一個不存在的id
1002引數為空、驗證不通過、引數型別錯誤
1003請求籤名異常、非法
404請求不存在
405請求方式錯誤
9999第三方介面請求異常
500系統異常

相關文章