基于Python 的京东秒杀 火车票脚本

摘要

在购买京东商品的时候,总是觉得等的太久,突然想想,要不,自己写个抢单的脚本,于是,有了这篇博文,这里来分享下自己的心得。

原理介绍

客服端不断向服务器,发送自己的账号和密码,满足抢单要求,抢购。


运行环境

  • 浏览器驱动 ChromeDriver
  • Python 3.5
  • Splinter 执行:pip install splinter 安装 Splinter即可

抢单脚本

京东抢单脚本

#-*- coding:utf-8 -*-
#京东抢单脚本
from splinter.browser import Browser
import datetime
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 belse:  #多次抢购操作后,有可能会被转到京东首页,所以要再打开手机主页b.visit("https://item.jd.com/3995560.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

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()
while True:print('恭喜你,抢购成功')break

链接推荐:[http://blog.csdn.net/u013042248/article/details/53966185]
参考链接:[https://zhuanlan.zhihu.com/p/25214682]

基于Python 的京东秒杀 火车票脚本相关推荐

  1. c语言实现京东秒杀软件,python实现京东秒杀功能

    本文实例为大家分享了python实现京东秒杀的具体代码,供大家参考,具体内容如下 # _*_coding:utf-8_*_ from selenium import webdriver import ...

  2. 基于python的智能家居_基于Python的智能家居自动化测试脚本设计及实现

    投稿网址 http:www.VideoE.cn|<电视技术>第39 卷第5 期(总第458 期) 117 [本文献信息]沈杰,潘科,刘昕,等. 基于 Python 的智能家居自动化测试 ...

  3. 基于Python的京东商品信息分析与实现

    随着信息技术和互联网技术的快速发展,利用数据采集技术实现用户感兴趣的数据收集分析成为很多互联网公司研究讨论的热门话题.通过对基于京东商品的数据采集进行商品价格动态变化的需求进行调查分析,发现作为研究商 ...

  4. 年年双十一,年年抢不到,自制Python淘宝秒杀抢购脚本,百分百中

    大家好,我是不学前端的前端程序员, 事情是这个样子的,前几天不是双十一预购秒杀嘛 由于我女朋友比较笨,手速比较慢,就一直抢不到,她没抢到特价商品就不开心, 她不开心,我也就不能跟着开心,就别提看6号的 ...

  5. 自制基于python的DoU log分析脚本

    工作中测试DoU的log需要分析,原先是使用excel,去ctrl c,ctrl v截取数据,整理格式等等.一来,这工作虽然很简单,但是非常耗时,不熟练的人(比如我)一搞搞个半天:二来,不小心还会出现 ...

  6. centos7配置不开启浏览器执行基于python+selenium的功能自动化脚本

    一)软件环境 python 3.7 selenium 3.11 geckodriver 0.21.0    //将其放置于/usr/bin目录下 firefox 62.0        //将其主目录 ...

  7. 基于Python SimpleHTTPServer.py的修改脚本:HTTP文件服务器,修正中文目录列表,支持视频文件在线播放

    # -*- coding: gbkimport SimpleHTTPServer import BaseHTTPServer import time import SocketServer impor ...

  8. python软件测试脚本_基于Python的实时嵌入式软件测试脚本

    摘 要:计算机技术应用的不断普及,使得实时嵌入式软件在航空.航天.工业控制.交通.医疗和军事安全等诸多领域发挥着愈来愈重要的作用.不难看出,这些领域对软件的可靠性有很严格的要求,因为该领域的软件一旦失 ...

  9. 基于python的简单异或脚本

    做php webshell免杀时通常会采用异或的思路,所以用个脚本辅助下,减少点手工量 编写 1.从具备ASCII码值的可打印字符选取两个字符进行异或运算,当结果在给定的字符串中时将其保存到异或列表 ...

最新文章

  1. SQLite第三方框架FMDB的使用,以及使用FMDatabaseQueue保证线程安全
  2. [java]处理utf-8 bom字符串的bom头
  3. Spring.Net官网翻译
  4. 探索 Block 的本质
  5. SQLDump***.txt
  6. 中科软测试面试题2019_2019国考成绩今日是否会发布,笔试120能进面不?
  7. JDK8新特性-java.util.function-Predicate接口
  8. PHP服务Fcgi进程及PHP解析优化
  9. illegal utf8 encoding at (190)
  10. http://Live.GIGA.NET.TW/FM917/
  11. paip.提升性能---协程“微线程”的使用.
  12. 远程桌面客户端管理器RDCMan
  13. android 插桩工具,自插桩测试示例  |  Android 开源项目  |  Android Open Source Project...
  14. 【工具】文件去重软件Czkawka
  15. 银行卡四要素验证API接口用法简介
  16. 小程序中点击二维码图片预览、长按转发、保存、识别图中二维码
  17. TLS协议分析------
  18. 虚幻引擎UE4背包系统(如何制作可拖动(Drag and Drop)的背包(Scrollbox))
  19. Vue中的Pinia状态管理工具 | 一篇文章教会你全部使用细节
  20. IMPERVA-WAF 硬盘更换

热门文章

  1. 路由桥接后副路由频繁断网的解决办法及完整的桥接过程
  2. C语言刷题随记 —— 疯狂的兔子
  3. ios 自己服务器 苹果支付_thinkphp整合系列之苹果AppStore内购付款的服务器端php验证...
  4. axios下载大文件_用Vue构建一个github“可视化大数据平台”
  5. 自动驾驶规划控制(A*、pure pursuit、LQR算法,使用c++在ubuntu和ros环境下实现)
  6. php mysql 溢出_mysql时间戳溢出问题
  7. Vue 路由组件通讯传参的 8 种方式
  8. Moonbeam隆重推出您的个人开发小助手 — — Kapa.ai
  9. log4j2配置说明
  10. UE4 Additive和Modulate模式