随笔:apiherobuy项目总结

因为新冠肺炎的关系,我所在的公司面临业务转型,所以在电商采集这一块,可能就终止了。
http://api.herobuy.com/ 接口项目就做个总结,留个念想。

背景

apiHerobuy项目是用于公司做逆向海淘(海外代购国内商品)业务,主要是通过实时解析国内多个大型电商的商品信息,
让海外的用户轻松购买国内的(淘宝、天猫、京东、1688等等的电商大头)商品。
但是由于最近的海外 新冠肺炎(英文︰COVID-19)疫情严重,海外的用户购买力下降,加上进出口限制更加严格等问题,
导致这方面的业务已经开展不下去了,于是公司代购业务面临转型,而该解析项目也就终止了。
于是,就这个项目做一些总结。毕竟,都是我一个人去完成的,就像自己的孩子一样..挺可惜的

项目展示

扉页

登录

注册

信息总览

菜单总览

爬虫运行管理


爬虫封装&部署

cookies池,账户信息管理


技术栈

包含但不限于以下技术栈..太多琐碎的了,就列举几个比较大的。

  1. Django
  2. Redis
  3. Mongodb
  4. Scrapy
  5. Scrapy-redis
  6. Scrapyd
  7. Docker
  8. uwsgi
  9. Nginx
  10. Boostrap4
  11. JQuery
  12. AdminLTE
  13. Pyppeteer
  14. Requests
  15. Celery
  16. DRF
  17. Linux-Ubuntu18.04
  18. 代理池
  19. cookies池
  20. 模拟登录
  21. asyncio

爬虫包含

  1. 京东scrapy:

    1
    2
    3
    4
    5
    jdItems:商品详情爬虫
    jdShop:商家商品爬虫
    jdSearch:商品搜索爬虫
    jdSearchm:商品搜索手机版爬虫
    兼容:京东大药房、一号店、拍拍等等京东旗下
  2. 淘宝(天猫)scrapy:

    1
    2
    3
    tbItems:商品详情爬虫
    tbShop:商家商品爬虫
    tbSearch:商品搜索爬虫
  3. 1688scrapy:

    1
    2
    3
    1688Items:商品详情爬虫
    1688Shop:商家商品爬虫
    1688Search:商品搜索爬虫

代理池

  1. 免费代理

    1
    2
    3
    使用 jhao104/proxy_pool 搭建的代理池,主要用于解决代理池从无到有的问题。
    算是代理池备用方案,将其内嵌到了apiherobuy中,并作了接口封装转发。
    该项目本身也有易扩展的优点,而且支持使用redis,跟apiherobuy技术栈契合。
  2. 付费代理阿布云

    1
    2
    3
    大型采集使用免费代理终归是不够的。
    所以还购买了阿布云代理,并开发有关的scrapy中间件,在中间件里面
    apiherobuy也做了一层代理接口,方便其他外部项目的调用

cookies池

  1. pyppeteer 模拟登录 cookies池

    1
    2
    3
    4
    使用django+celery+asyncio异步处理的组合来达到使用pyppeteer模拟登录淘宝的目的。
    登录成功的cookies会被入库保存,使用的时候通过有关接口调用即可,
    支持参数动态切换对应账号cookies。
    带有自动和手动cookies有效性检测。
  2. nodeJS Koa服务接口 处理JS逆向

    1
    计划中的东西,但是项目已经终止

工作流程简述

1
2
3
4
5
lete/herobuy 电商后端 -> apiherobuy接口(检查mongodb是否已存在或已过时) -> 
redis任务队列 —> docker(scrapy) * N 接受任务 —>
入库mongodb + 回调redis —> apiherobuy接口获取数据 —> 发送给 lete/herobuy 电商后端

apiherobuy接口平台具备web动态管理docker和爬虫部署运行的功能等等

×

也就放着玩的

扫码支持
扫码打赏,其实感觉也没人会给的。。

打开支付宝扫一扫,即可进行扫码打赏哦

文章目录
  1. 1. 背景
  2. 2. 项目展示
    1. 2.1. 扉页
    2. 2.2. 登录
    3. 2.3. 注册
    4. 2.4. 信息总览
    5. 2.5. 菜单总览
    6. 2.6. 爬虫运行管理
    7. 2.7. 爬虫封装&部署
    8. 2.8. cookies池,账户信息管理
    9. 2.9. 技术栈
  3. 3. 爬虫包含
  4. 4. 代理池
  5. 5. cookies池
  6. 6. 工作流程简述
,