您的位置:首页 > 编程语言 > Python开发

python脚本网页点击抢购京东乐视2(现在好像不用抢购了)

2016-05-16 10:10 519 查看
前阵子,想抢太魅蓝NOTE3,在京东上点击抢购了好多下,果然没抢到。然后又关注到了乐视2,性价比高,但确实 没有魅蓝好看,电池也小。为了不想重复点击抢购操作,用splinter模块来模拟鼠标点击操作,办法很笨,抢购效果差,但也成功过,只是没下决心买就取消了订单。这应该是学python第一个小程序,运行了还是有点小开心的。贴上代码,留待以后看看。

参照了教程http://www.mamicode.com/info-detail-1136595.html,再加修改。

前提要先安装浏览器驱动,具体驱动下载页面至splinter官方文档http://splinter.readthedocs.io/en/latest/ 下载安装,文档很短,看完就知道简单运用了


#-*- coding:utf-8 -*-
'''乐视2手机抢购脚本文件,渠道:京东'''
from splinter.browser import Browser
import time

#登录页
def login(b):  #登录京东
b.click_link_by_text("你好,请登录")
time.sleep(3)
b.fill("loginname","account*****")  #填写账户密码
b.fill("nloginpwd","passport*****")
b.find_by_id("loginsubmit").click()
time.sleep(3)
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("http://item.jd.com/2707976.html")
b.find_by_id("choose-btn-qiang").click()
time.sleep(10)
loop(b)  #递归操作
except Exception as e: #异常情况处理,以免中断程序
b.reload()  #重新刷新当前页面,此页面为订单提交页
time.sleep(2)
loop(b)  #重新调用自己

b=Browser(driver_name="chrome") #打开浏览器
b.visit("http://item.jd.com/2707976.html")
login(b)
b.find_by_id("choose-btn-qiang").click() #找到抢购按钮,点击
time.sleep(10)  #等待10sec
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


此程序一会就用不到乐视2的抢购,但稍加修改可以在京东抢购其他手机。程序简单,成功率低,算一个很低级的抢购脚本了,对于刚学习pyhton和编程的我,还是很有意思的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: