欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python实现自动上京东抢手机

程序员文章站 2022-05-23 21:39:21
本文实例为大家分享了Python自动上京东抢手机的具体代码,供大家参考,具体内容如下 上次抢荣耀V9,被京东给恶心到了,所以就写了个简单的Python来自动抢V9。虽然用...

本文实例为大家分享了Python自动上京东抢手机的具体代码,供大家参考,具体内容如下

上次抢荣耀V9,被京东给恶心到了,所以就写了个简单的Python来自动抢V9。虽然用的是比较蠢的方法,但觉得还是有可以学习的地方。所以在这里把代码贴出来给大家看看。

# -*- coding: UTF-8 -*- 
from splinter.browser import Browser 
import time 
def login(b): 
 b.click_link_by_text("账户登录") 
 time.sleep(1) 
 b.fill("loginname","XXX") #京东用户名 
 time.sleep(1) 
 b.fill("nloginpwd","XXX") #登陆密码 
 time.sleep(1) 
 b.find_by_id("loginsubmit").click() 
 print b 
 return b 
#订单页 
def loop(b): #循环点击 
 try: 
  if b.title=="订单结算页 -京东商城": 
   b.find_by_text("保存收货人信息").click() 
   b.find_by_text("保存支付及配送方式").click() 
   b.find_by_id("order-submit").click() 
   return b 
  else: #多次抢购操作后,有可能会被转到京东首页,所以要再打开手机主页 
   b.visit("https://item.jd.com/4461470.html") #荣耀V9的URL 
   b.find_by_id("choose-btn-qiang").click() 
   time.sleep(1) 
   loop(b) #递归操作 
 except Exception: #异常情况处理,以免中断程序 
  b.reload() #重新刷新当前页面,此页面为订单提交页 
  time.sleep(1) 
  loop(b) #重新调用自己 
b = Browser() 
b.visit("https://item.jd.com/4461470.html") 
time.sleep(10) 
b.click_link_by_text("你好,请登录") 
time.sleep(5) 
b = login(b) #登录 
time.sleep(1) 
while True: 
 loop(b) 
 if b.is_element_present_by_id("tryBtn"): #订单提交后显示“再次抢购”的话 
  b.find_by_id("tryBtn").click() #点击再次抢购,进入读秒5,跳转订单页 
  time.sleep(6.5) 
 elif b.title=="订单结算页 -京东商城": #如果还在订单结算页 
  b.find_by_id("order-submit").click() 
 else: 
  print('恭喜你,抢购成功') 
  break 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。