前言:我想在源文章里加入下面一段来着,但是实在加不上,报什么405,造成安全威胁,不好意思哈各位,这么点内容还另起一章实在不好意思哈。

千万别一直挂着会封ip的,别问我怎么知道的,我不想说T_T

代码如下:

虽然还是存在很多的问题,但是真的不愿意改了,票买到了就没什么动力,大家懂得,上面的代码的确存在问题不好意思:# -*- coding: utf-8 -*-

"""

Created on Fri Dec 04 00:35:24 2015

@author: Ye

"""

from splinter.browser import Browser

from time import sleep

#用户名,密码

username = "用户名"

passwd = "密码"

#cookies值得自己去找,下面两个分别是上海,长沙,怎么找blog中说明了

starts = "%u4E0A%u6D77%2CSHH"

ends = "%u957F%u6C99%2CCSQ"

#时间格式2016-01-31

dtime = "2016-02-02"

#车次,选择第几趟,0则从上之下依次点击

order = 0

###乘客名

pa = u"乘客名(常用联系人)"

###车次类型

ttype="GC-高铁/城际"

#网址

ticket_url = "https://kyfw.12306.cn/otn/leftTicket/init"

login_url = "https://kyfw.12306.cn/otn/login/init"

initmy_url = "https://kyfw.12306.cn/otn/index/initMy12306"

config_url = "https://kyfw.12306.cn/otn/confirmPassenger/initDc"

def login():

b.find_by_text(u"登录").click()

sleep(3)

b.fill("loginUserDTO.user_name",username)

sleep(1)

b.fill("userDTO.password",passwd)

sleep(1)

b.execute_script('alert("自行输入验证码吧~")')

print u"等待验证码,自行输入..."

sleep(10)

def huoche():

global b

b = Browser(driver_name="chrome")

b.visit(ticket_url)

b.execute_script('alert("开始刷票喽~~~~")')

sleep(2)

b.get_alert().dismiss()

while b.is_text_present(u"登录"):

sleep(1)

login()

if b.url == initmy_url:

break

try:

#跳回购票页面

b.visit(ticket_url)

#加载查询信息

b.cookies.add({"_jc_save_fromStation":starts})

b.cookies.add({"_jc_save_toStation":ends})

b.cookies.add({"_jc_save_fromDate":dtime})

b.reload()

i = 1

#循环点击预订

if order != 0:

while b.url == ticket_url:

b.find_by_text(u"查询").click()

#                b.find_by_text(ttype).click()

if b.find_by_text(u"预订"):

sleep(0.3)

b.find_by_text(u"预订")[order - 1].click()

print b.url

if b.is_text_present(u"证件号码",wait_time=0.2):

#                        print [ i.text for i in b.find_by_text(pa) ]

b.find_by_text(pa)[1].click()

else:

b.execute_script('alert("似乎没有可预订选项")')

b.get_alert().dismiss()

pass

else:

while b.url == ticket_url:

b.find_by_text(u"查询").click()

if b.find_by_text(u"预订"):

sleep(0.3)

for i in b.find_by_text(u"预订"):

i.click()

sleep(0.1)

if b.is_text_present(u"证件号码"):

b.find_by_text(pa)[1].click()

else:

b.execute_script('alert("似乎没有可预订选项")')

b.get_alert().dismiss()

pass

b.execute_script('alert("能做的都做了")')

b.get_alert().dismiss()

print  u"能做的都做了.....不再对浏览器进行任何操作"

except Exception:

print u"出错了...."

if __name__ == "__main__":

huoche()

放上来怎么没有缩进了T_T

好吧,还是百度云吧

http://pan.baidu.com/s/1gdTu7cR

python火车票票价_Python火车票代码相关推荐

  1. python火车票票价_Python火车票机

    我被困在一个练习,我需要做一个火车票机,但我只是一个星期的练习Python,我不知道如何开始.在 首先我得到了这个:stations = ['Schagen', 'Heerhugowaard', 'A ...

  2. python复利计算_python复利代码

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 比如在<零基础学编程012:画出复利曲线图>提到的numpy和mat ...

  3. python保存变量_python – 在代码运行之间保存变量的数据

    对于一个学校项目,我正在用 Python制作一个刽子手游戏.现在我的代码从字典中选择一个单词,如下所示: WordList = ["cat", "hat", & ...

  4. python实现火车票查询_Python脚本实现12306火车票查询系统

    最近我看到看到使用python实现火车票查询,我自己也实现了,感觉收获蛮多的,下面我就把每一步骤都详细给分享出来.(注意使用的是python3) 首先我将最终结果给展示出来: 在cmd命令行执行:py ...

  5. python刷火车票脚本_使用python脚本实现查询火车票工具

    使用python脚本实现查询火车票信息的效果图如下: 实现的代码: # coding: utf-8 """命令行火车票查看器 Usage: tickets [-gdtkz ...

  6. python识别火车票二维码_使用python脚本实现查询火车票工具

    使用python脚本实现查询火车票信息的效果图如下: 实现的代码: # coding: utf-8 """命令行火车票查看器 Usage: tickets [-gdtkz ...

  7. python抢火车票_听说你能用 Python 帮我抢火车票?!

    原标题:听说你能用 Python 帮我抢火车票?! 文 | 车栗子 来源 |量子位公众号 想要十一回家的小伙伴们,大概刚刚经历了一波抢票大战. 顺便把一个Python抢票工具,送到了GitHub趋势榜 ...

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

    基于Python 的京东秒杀 火车票脚本 摘要 在购买京东商品的时候,总是觉得等的太久,突然想想,要不,自己写个抢单的脚本,于是,有了这篇博文,这里来分享下自己的心得. 原理介绍 客服端不断向服务器, ...

  9. python写了代码_Python写代码的用法建议

    1.Mutable and immutable types Python有两种内置或用户定义的类型 可变类型是允许就地修改内容的类型.典型的可变列表是列表和词典:所有列表都有变异方法,如 list.a ...

  10. python同时注释多行代码_python怎么同时对多行代码进行注释

    学会向程序中添加必要的注释,也是很重要的.注释不仅可以用来解释程序某些部分的作用和功能(用自然语言描述代码的功能),在必要时,还可以将代码临时移除,是调试程序的好帮手. 当然,添加注释的最大作用还是提 ...

最新文章

  1. Windows下批处理文件(.bat)的使用
  2. R 语言 download.file 的几点知识
  3. no awt in java.libary.path
  4. endl、flush、ends、unitbuf、nounitbuf区别及详解
  5. 关于Rxjava的几个问题
  6. 软件项目管理四个核心价值观
  7. OwinStartup不触发
  8. linux脚本怎么发送到桌面,如何在Linux上使用Zenity创建简单的图形Shell脚本
  9. 51单片机的初了解(4)
  10. Splice Beatmaker for Mac(音乐节拍工具)
  11. PLSQL Developer 12 破解注册码
  12. html特殊符号对照表
  13. antDesignPro大坑 Maxium call stack size exceeded
  14. 游戏开发之NGUI字体集制作
  15. 小米智能插座接入HomeKit
  16. 生物识别设备有问题_有您数据的生物识别
  17. 靠查看英语资料 , “一不小心”成了国内第一
  18. oracle stdevp函数,SQL Server与oracle两者区别之函数区别
  19. 华为服务器控制口地址修改,修改华为服务器管理口地址
  20. 互联网项目团队成员及能力组成的金字塔和倒金字塔模型

热门文章

  1. android webview 本地视频播放,Android中webview html5 自动播放本地视频
  2. [SLAM基础学习简记]非线性优化
  3. 2022年玻璃包装容器行业市场发展环境分析预测及下游需求规模增长率研究预测
  4. 在线富文本编辑器-基于Web的HTML编辑器大全(二)
  5. 用ping让对方电脑堵塞瘫痪
  6. 关于高效学习工作的几本书
  7. 常用的前端还款计算器(包括按月等额本息、按四月等额本息、到期还本付息、到期还本按月付息四种还款方式)
  8. [原创]网上一位叫啊松得网友提供,本人搜集!!
  9. 什么是不确定性推理?不确定推理中需要解决的基本问题有哪些?
  10. JavaCV本地视频流通过帧图片添加文本进行字幕合成