Python 12306抢火车票脚本 Python京东抢手机脚本


Posted in Python onFebruary 06, 2018

本文实现12306抢火车票/京东抢手机示例,具体如下:

#12306秒抢Python代码
from splinter.browser import Browser
x = Browser(driver_name="chrome")
url = “https://kyfw.12306.cn/otn/leftTicket/init”
x = Browser(driver_name="chrome")
x.visit(url)
#填写登陆账户、密码
x.find_by_text(u"登录").click()
x.fill("loginUserDTO.user_name","your login name")
x.fill("userDTO.password","your password")
#填写出发点目的地
x.cookies.add({"_jc_save_fromStation":"%u4E0A%u6D77%2CSHH"})
x.cookies.add({"_jc_save_fromDate":"2016-01-20"})
x.cookies.add({u'_jc_save_toStation':'%u6C38%u5DDE%2CAOQ'})
#加载查询
x.reload()
x.find_by_text(u"查询").click()
#预定
x.find_by_text(u"预订")[1].click()
#选择乘客
x.find_by_text(u"数据分析侠")[1].click()
#-*- coding:utf-8 -*-
#京东抢手机脚本
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

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

Python 相关文章推荐
Python中os和shutil模块实用方法集锦
May 13 Python
python生成IP段的方法
Jul 07 Python
浅析Python中yield关键词的作用与用法
Nov 29 Python
Python自动化运维之IP地址处理模块详解
Dec 10 Python
python 接口返回的json字符串实例
Mar 27 Python
python编写暴力破解zip文档程序的实例讲解
Apr 24 Python
Python面向对象之类的定义与继承用法示例
Jan 14 Python
python 获得任意路径下的文件及其根目录的方法
Feb 16 Python
numpy求平均值的维度设定的例子
Aug 24 Python
python定时任务 sched模块用法实例
Nov 04 Python
python中有关时间日期格式转换问题
Dec 25 Python
django数据模型(Model)的字段类型解析
Dec 25 Python
TensorFlow高效读取数据的方法示例
Feb 06 #Python
django使用xlwt导出excel文件实例代码
Feb 06 #Python
Python使用装饰器进行django开发实例代码
Feb 06 #Python
Python yield与实现方法代码分析
Feb 06 #Python
Django中间件工作流程及写法实例代码
Feb 06 #Python
Django数据库表反向生成实例解析
Feb 06 #Python
Python使用functools实现注解同步方法
Feb 06 #Python
You might like
php正则校验用户名介绍
2008/07/19 PHP
codeigniter自带数据库类使用方法说明
2014/03/25 PHP
php+curl 发送图片处理代码分享
2015/07/09 PHP
php数据序列化测试实例详解
2017/08/12 PHP
php实现对文件压缩简单的方法
2019/09/29 PHP
IE与FireFox的兼容性问题分析
2007/04/22 Javascript
用javascript获取当页面上鼠标光标位置和触发事件的对象的代码
2009/12/09 Javascript
JS实现清除指定cookies的方法
2014/09/20 Javascript
jQuery实现拖动调整表格单元格大小的代码实例
2015/01/13 Javascript
JavaScript判断变量是否为数组的方法(Array)
2016/02/24 Javascript
AngularJS中的包含详细介绍及实现示例
2016/07/28 Javascript
Angularjs中$http以post请求通过消息体传递参数的实现方法
2016/08/05 Javascript
ES6新特性三: Generator(生成器)函数详解
2017/04/21 Javascript
bootstrap插件treeview实现全选父节点下所有子节点和反选功能
2017/07/21 Javascript
node使用Koa2搭建web项目的方法
2017/10/17 Javascript
vue 自定义全局方法,在组件里面的使用介绍
2018/02/28 Javascript
JavaScript this绑定过程深入详解
2018/12/07 Javascript
Python库urllib与urllib2主要区别分析
2014/07/13 Python
Django 根据数据模型models创建数据表的实例
2018/05/27 Python
OpenCV+Python识别车牌和字符分割的实现
2019/01/31 Python
wxpython+pymysql实现用户登陆功能
2019/11/19 Python
python 删除excel表格重复行,数据预处理操作
2020/07/06 Python
python logging模块的使用详解
2020/10/23 Python
.NET程序员的几道面试题
2012/06/01 面试题
妈妈的账单教学反思
2014/02/06 职场文书
个人房屋转让协议书范本
2014/10/26 职场文书
学生会生活部工作总结2015
2015/03/31 职场文书
工作感言一句话
2015/08/01 职场文书
大学学生会主席竞选稿
2015/11/19 职场文书
资产移交协议书
2016/03/24 职场文书
教你怎么用Python实现多路径迷宫
2021/04/29 Python
Python基础之操作MySQL数据库
2021/05/06 Python
浅谈Python魔法方法
2021/06/28 Java/Android
苹果M1芯片安装nginx 并且部署vue项目步骤详解
2021/11/20 Servers
《黑岩★★射手 DAWN FALL》BD发售宣传CM公开
2022/04/04 日漫
详解Android中的TimePickerView(时间选择器)的用法
2022/04/30 Java/Android