python制作自动抢票_python自动抢票
# -*- coding: utf-8 -*-
from splinter.browser import Browser
from time import sleep
import traceback
#初始化信息
# 用戶名,密碼
username = u"用戶名"
passwd = u"密碼"
# cookies值得自己去找
starts = u"杭州,HZH"
ends = u"黃石,HSN"
# 時間格式2016-03-22
dtime = u"2016-03-22"
# 車次,選擇第幾趟,0則從上之下依次點擊
order = 0
###乘客名,如果是自己,則上面有個鏈接是自己的,會跳轉到個人中心,用index[1]
#如果乘客不是自己,則用index[0]
pa = u"名字"
"""網址"""
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"
def login():
#點擊登錄,從購票頁面調到了登錄頁面
b.find_by_text(u"登錄").click()
sleep(3)
#給name為loginUserDTO.user_name附上用戶名
#也可以用Id查找的方法b.find_by_id('username').fill(username)
b.fill("loginUserDTO.user_name", username)
sleep(1)
#給name為userDTO.password值
b.fill("userDTO.password", passwd)
sleep(1)
#驗證碼必須手動輸入
print u"等待驗證碼,自行輸入..."
#檢測頁面是否跳轉(用戶是否輸入了驗證碼并且提交)
while True:
if b.url != initmy_url:
sleep(1)
else:
break
def huoche():
global b
b = Browser(driver_name="chrome")
#訪問12306
b.visit(ticket_url)
#查找帶登錄的字符串,u是避免中文報錯
while b.is_text_present(u"登錄"):
sleep(1)
#如果存在調用登錄方法
login()
if b.url == initmy_url:
break
#當執行完login方法后,登錄成功,繼續向下執行
try:
print u"購票頁面..."
# 跳回購票頁面
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()
sleep(2)
count = 0
# 循環點擊預訂
#order=0則從第一班車開始全部依次預訂
if order != 0:
#如果頁面沒有跳轉到,說明沒有搶到票,繼續搶票
while b.url == ticket_url:
#點擊查詢進行刷新
b.find_by_text(u"查詢").click()
count +=1
print u"循環點擊查詢... 第 %s 次" % count
sleep(1)
try:
#點擊預訂的那班車
b.find_by_text(u"預訂")[order - 1].click()
except:
print u"還沒開始預訂"
continue
else:
while b.url == ticket_url:
b.find_by_text(u"查詢").click()
count += 1
print u"循環點擊查詢... 第 %s 次" % count
sleep(1)
try:
#從第一個開始依次預訂
for i in b.find_by_text(u"預訂"):
i.click()
except:
print u"還沒開始預訂"
continue
sleep(1)
#若循環結束了,則選擇聯系人
b.find_by_text(pa)[0].click()
print u"能做的都做了.....不再對瀏覽器進行任何操作"
except Exception as e:
print(traceback.print_exc())
if __name__ == "__main__":
huoche()
總結
以上是生活随笔為你收集整理的python制作自动抢票_python自动抢票的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python删除所有core文件_pyt
- 下一篇: 手机python3_python3 简