- 环境搭建
第一步
把项目代码(https://download.csdn.net/download/qq_38144995/14121383)下载到本地并解压。
第二步
进入到解压后的目录中,使用 venv 创建一个虚拟环境,注意一定要使用 Python 3,创建完成后进入虚拟环境
创建虚拟环境$ python3 -m venv . # 进入虚拟环境$ source bin/activate
第三步:
往虚拟环境中安装依赖包
如果是 mac 或者 linux 只要执行这条命令就行
$ python -m pip install -r requirements.txt
而如果你使用 windows ,在依赖中有一个 lxml 库,这个库在 windows 中你使用 pip 是安装不上的,你得从网上下载 wheel 文件来手动安装,然后再执行上面的命令,下载链接在下面,记得选择对应 Python 的版本,由于这个页面里的 lxml 版本是 4.6.2,因此你要手动改动 requirements.txt 文件里的 lxml 版本。
lxml 下载地址https://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml
如此你的运行环境就搭建好了。
- 准备工作
在开始抢之前 ,有一些配置需要你手动弄好,主要有这几项:
京东的 eid 和 fp
登陆你的京东网页版,随便选个商品下单,然后使用 浏览器的F12 跟踪 _JdTdudfp 变量,就能得到 eid 和 fp
并把这两个值写入到项目根目录下的 config.ini 文件中。
在 config.ini 中还有一个很重要的设置,那就是抢购时间 buy_time
因为代码实际上是执行一个 while 循环,如果时间到了设置的值就开始模拟请求开始抢
#反复结算
def auto_check(self,times):
while True:
try:
if driver.find_element_by_id(‘J_SelectAll1’):
driver.find_element_by_id(‘J_SelectAll1’).click()
time.sleep(0.5)
break
except:
time.sleep(0.5)
pass
while True:
if datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') >= times:
while True:
try:
driver.find_element_by_id("J_Go").click()
print("成功结算")
driver.find_element_by_link_text('提交订单').click()
print(f"抢购成功,请尽快付款")
time.sleep(5)
return 0
except:
print("无法结算,重试")
time.sleep(1)
driver.get("https://cart.taobao.com/cart.htm")
self.auto_check(times)
def auto_check1(self,times):
while True:
if datetime.datetime.now().strftime(’%Y-%m-%d %H:%M:%S.%f’) >= times:
while True:
try:
driver.find_element_by_id(“J_Go”).click()
print(“成功结算”)
driver.find_element_by_link_text(‘提交订单’).click()
print(f"抢购成功,请尽快付款")
time.sleep(5)
return 0
except:
print(“无法结算,重试”)
time.sleep(1)
driver.get(“https://cart.taobao.com/cart.htm”)
self.auto_check(times)
运行
def run_driver(self, num, pwd, times):
self.login_in(num, pwd, times)
- 开始抢购
上面的配置全部完成后,就可以开始抢了。
抢的过程分为两步:
第一步:开 PLUS会员
第二步:预约抢购
只有预约的用户才能参与抢购,你可以手动搜索 茅台 进去预约,也可以使用这个脚本来帮你预约。
执行 python main.py 然后输入 1,会弹出一个二维码,打开你手机上的 京东 app 授权登陆,接着脚本就会去帮你预约。
第三步:开始抢购
一切都准备好了,你只要在快到早上 10 点的时候执行 python main.py,然后输入 2 ,就行了。接下来就看你的运气了。
以上就是使用 jd_seckill 抢茅台的完整过程,我写得非常清楚,甚至比 github 上的官方文档还要清楚。。真的是为广大读者谋福利操碎了心。
由于抢茅台需要先开通 PLUS 会员,因此抢购实际上是需要付出成本的,但一但抢到这个回报率就非常高了。