-
Notifications
You must be signed in to change notification settings - Fork 38
京东预约抢购助手用法
Mr-Wang119 edited this page May 4, 2020
·
1 revision
- 打开京东PC端官网,并登陆
- 随便加一个商品进入购物车,然后点击
去结算
- 在
订单结算页面
打开开发者工具
,在Console
中执行以下 Javascript 代码:
var eid = $('#eid').val();
var fp = $('#fp').val();
var trackId = getTakId();
var riskControl = $('#riskControl').val();
console.log(`eid = ${eid}\nfp = ${fp}\ntrack_id = ${trackId}\nrisk_control = ${riskControl}`);
- 用得到4个值替换
config.ini
中相应的值 (直接填入相应空白处即可,不需要引号引起来)
[config]
# eid, fp, track_id, risk_control 四个参数必须填写,具体请参考 wiki-常见问题
# 随意填写可能导致订单无法提交等问题
eid =
fp =
track_id =
risk_control =
这些参数有效期暂不确定,建议定期更换,主要是为了避免一些下单时可能出现的问题。有时取不出值,重新点击 去结算
即可。
- 在
config.ini
中,修改mail_addr
为想要接收提醒邮件的邮箱地址
[mail]
enable = true
mail_addr =
- 在
jdEmail.py
中,修改发信方信息,即发送提醒邮件的地址、密码 (使用qq邮箱以外的邮箱还需要配置发信服务器和端口)
# 用于构建邮件头
# 发信方的信息:发信邮箱,QQ 邮箱授权码
from_addr = ''
password = ''
# 发信服务器
smtp_server = 'smtp.qq.com'
# 开启发信服务,这里使用的是加密传输
server = smtplib.SMTP_SSL(host=smtp_server)
server.connect(smtp_server, 465)
- 在商品页面(例如 https://item.jd.com/1178879.html) 打开开发者工具,在 Console 中执行以下 Javascript 代码:
var el = document.getElementsByClassName("ui-area-text")[0]
var area_name = el.getAttribute("title")
var area_id = el.getAttribute("data-id").replace(/-/g, "_")
console.log(area_name)
console.log(area_id)
- 用得到的区域id替换
main.py
中的area
area = '' # 区域id
首先,需要获取需要抢购的商品id。例如:某个商品的网页url为 https://item.jd.com/1178879.html ,那么商品id就是 1178879
在main.py
中,
-
sku_ids
中填写待抢购商品的id,中间通过","分隔 -
sku_ids
中填写相应商品的抢购数量(抢购一般会限制购买数量),中间通过","分隔 -
all_reserve_time
中填写相应的预约时间,格式为"HH:MM:SS.fff",中间通过","分隔 -
all_buy_time
中填写相应的购买时间,格式为"HH:MM:SS.fff",中间通过","分隔
sku_ids = '65708238590,100011521400,65624145328,100006394713,100011551632' # 商品id
sku_nums = '1,1,1,1,1'
all_reserve_time = '10:59:30.000,20:59:30.000,10:59:30.000,14:59:30.000,14:59:30.000'
all_buy_time = '17:00:00.050,10:00:00.050,15:00:00.050,20:00:00.050,20:00:00.050'
在填写购买时间时,例如网页显示的购买时间为17:00:00
,设置的购买时间可以稍微推迟几十毫秒,例如17:00:050
,避免因为服务器时间和本地时间不一致,导致第一次抢购失败的问题,提升抢购的成功率。
在根目录下运行python main.py
在到达预定预约和抢购时间时,会自动开始进行预约和抢购。若预约/抢购时间已经过去,会自动跳过此商品。若抢购成功,在终端会看到状态变化,同时会收到提醒邮件。
抢购成功后,仍会处在未付款状态,需要尽快进入订单页面付款。