Python实现自动上京东抢手机

yipeiwu_com7年前Python基础

本文实例为大家分享了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 

更多关于python安装教程的文章请参考《python各版本安装教程》

更多精彩书单,请点击python编程必备书单

领取干货:零基础入门学习python视频教程

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python通过TimedRotatingFileHandler按时间切割日志

python通过TimedRotatingFileHandler按时间切割日志

通过TimedRotatingFileHandler按时间切割日志 线上跑了一个定时脚本,每天生成的日志文件都写在了一个文件中。但是日志信息不可能输出到单一的一个文件中。 原因有二:1....

Python3.6通过自带的urllib通过get或post方法请求url的实例

废话不多说,直接上代码: # coding:utf-8 from urllib import request from urllib import parse url = "http...

Django REST框架创建一个简单的Api实例讲解

Django REST框架创建一个简单的Api实例讲解

Create a Simple API Using Django REST Framework in Python WHAT IS AN API API stands for appli...

Python创建或生成列表的操作方法

Python创建或生成列表的操作方法

如何创建列表,或生成列表。这里介绍在python的基础知识里创建或转变或生成列表的一些方法。 零个,一个或一系列数据用逗号隔开,放在方括号[ ]内就是一个列表对象。 列表内的数据可以是...

浅谈Python NLP入门教程

浅谈Python NLP入门教程

正文 本文简要介绍Python自然语言处理(NLP),使用Python的NLTK库。NLTK是Python的自然语言处理工具包,在NLP领域中,最常使用的一个Python库。 什么是NL...