/jd-assistant

京东抢购助手:包含登录,查询商品库存/价格,添加/清空购物车,抢购商品(下单),查询订单等功能

Primary LanguagePythonMIT LicenseMIT

JD-Assistant

version status license star, issue

京东抢购助手(短期内不再更新)

主要功能

  • 登陆京东商城(www.jd.com
    • 手机扫码登录
    • 保存/加载登录cookies (可验证cookies是否过期)
  • 商品查询操作
    • 提供完整的地址⇔ID对应关系
    • 根据商品ID和地址ID查询库存
    • 根据商品ID查询价格
  • 购物车操作
    • 清空/添加购物车 (无货商品也可以加入购物车,预约商品无法加入)
    • 获取购物车商品详情
  • 订单操作
    • 获取订单结算页面信息 (商品详情, 应付总额, 收货地址, 收货人等)
    • 提交订单(使用默认地址)
      • 直接提交
      • 有货提交
      • 定时提交
    • 查询订单 (可选择只显示未付款订单)
  • 其他
    • 商品预约
    • 用户信息查询

运行环境

第三方库

安装:

pip install -r requirements.txt

使用教程

程序主入口在 main.py

👉 使用教程请参看Wiki

更新记录

  • 【2020.02.08】修复了查询库存接口响应数据结构变化导致的问题。
  • 【2020.02.06】添加下单成功消息推送功能;新增配置参数以减少各种异常情况。
  • 【2020.02.03】查询商品库存方法添加超时,避免少数情况下的卡死问题;对部分代码进行了优化。
  • 【2020.02.02】重写了监控库存提交订单功能:监控多商品时可以下单任一有库存商品,具体使用方式请参考wiki。
  • 【2020.01.29】修复了自定义商品数量时的bug。
  • 【2020.01.28】完善了监控库存提交订单功能的代码,具体使用方式请参考wiki。
  • 【2020.01.24】修复了查询单个商品库存接口需要添加额外参数的问题。
  • 【2020.01.15】提升了部分代码质量。
  • 【2019.12.14】解决查询单个商品库存接口变动的问题。
  • 【2019.11.10】临时增加预约商品抢购功能。
  • 【2019.02.16】更新了普通商品的抢购代码,在Wiki中写了一份使用教程。
  • 【2018.11.29】京东更新了抢购商品的下单接口,代码已更新,支持定时抢购。
  • 【2018.09.26】京东已下线字符验证码接口,账号密码登录功能失效,请使用扫码登录asst.login_by_QRcode()
  • 【2018.07.28】京东已采用滑动验证码替换登录时出现的字符验证码,但还没有下线字符验证码接口,账号密码登录功能依旧可用。等待后续更新滑动验证方式,推荐使用扫码登录

备注

  • 🌟强烈建议大家在部署代码前使用有货的商品测试下单流程,并且:在京东购物车结算页面设置发票为电子普通发票-个人,设置支付方式为在线支付,否则可能出现各种未知的下单失败问题。🌟
  • 京东商城的登陆/下单机制经常改动,当前测试时间2020.02.08。如果失效,欢迎提issue,我会来更新。
  • 代码在macOS中编写,如果在其他平台上运行出行问题,欢迎提issue。

待完成的功能

  • Keep session alive
  • 抢优惠券

不考虑的功能

  • ✖️ 支付功能
  • ✖️ 多账号抢购

Sponsor

JetBrains