Python实现自动上京东抢手机

yipeiwu_com6年前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-opencv读取视频,计算视频总帧数及FPS的实现

如下所示: 1、计算总帧数 import os import cv2 video_cap = cv2.VideoCapture('ffmpeg_test.avi') fram...

Python GUI编程 文本弹窗的实例

如下所示: out = subprocess.getstatusoutput('adb shell pm list packages') top = tk.Top...

Python字符串处理函数简明总结

返回被去除指定字符的字符串 默认去除空白字符 删除首尾字符:str.strip([char]) 删除首字符:str.lstrip([char]) 删除尾字符str.strip([ch...

Django 批量插入数据的实现方法

项目需求:浏览器中访问django后端某一条url(如:127.0.0.1:8080/get_book/),实时朝数据库中生成一千条数据并将生成的数据查询出来,并展示到前端页面 view...

python使用numpy实现直方图反向投影示例

python使用numpy实现直方图反向投影示例

最近跟着OpenCV2-Python-Tutorials在学习python_opencv中直方图的反向投影时,第一种方法是使用numpy实现将图中的红色玫瑰分割出来,教程给的代码缺了一句...