91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python如何實現火車票搶票

發布時間:2021-08-20 09:19:56 來源:億速云 閱讀:224 作者:小新 欄目:開發技術

這篇文章主要為大家展示了“python如何實現火車票搶票”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“python如何實現火車票搶票”這篇文章吧。

該代碼僅供參考,主要用于大家溝通交流,禁止用于商業用途。

具體代碼如下,可以修改成自己的12306用戶名賬號:

# -*- coding: utf-8 -*-
from splinter.browser import Browser
from time import sleep
import traceback
import time, sys

class huoche(object):
 """docstring for huoche"""
 driver_name=''
 executable_path=''
 username = u"xxx@qq.com"
 passwd = u"xxxx"
 starts = u"%u4E0A%u6D77%2CSHH"
 ends = u"%u592A%u539F%2CTYV"
 dtime = u"2018-01-19"
 order = 0
 users = [u"xxx",u"xxx"]
 xb = u"二等座"
 pz=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"
 buy="https://kyfw.12306.cn/otn/confirmPassenger/initDc"
 
 def __init__(self):
 self.driver_name='chrome'
 self.executable_path='/usr/local/bin/chromedriver'

 def login(self):
 self.driver.visit(self.login_url)
 self.driver.fill("loginUserDTO.user_name", self.username)
 # sleep(1)
 self.driver.fill("userDTO.password", self.passwd)
 print u"等待驗證碼..."
 while True:
  if self.driver.url != self.initmy_url:
  sleep(1)
  else:
  break

 def start(self):
 self.driver=Browser(driver_name=self.driver_name,executable_path=self.executable_path)
 self.driver.driver.set_window_size(1400, 1000)
 self.login()
 # sleep(1)
 self.driver.visit(self.ticket_url)
 try:
  print u"購票頁面開始..."

  self.driver.cookies.add({"_jc_save_fromStation": self.starts})
  self.driver.cookies.add({"_jc_save_toStation": self.ends})
  self.driver.cookies.add({"_jc_save_fromDate": self.dtime})

  self.driver.reload()

  count=0
  if self.order!=0:
  while self.driver.url==self.ticket_url:
   self.driver.find_by_text(u"查詢").click()
   count += 1
   print u"循環點擊查詢..." % count
   # sleep(1)
   try:
   self.driver.find_by_text(u"預訂")[self.order - 1].click()
   except Exception as e:
   print e
   print u"還沒開始預訂"
   continue
  else:
  while self.driver.url == self.ticket_url:
   self.driver.find_by_text(u"查詢").click()
   count += 1
   print u"循環點擊查詢..." % count
   # sleep(0.8)
   try:
   for i in self.driver.find_by_text(u"預訂"):
    i.click()
    sleep(1)
   except Exception as e:
   print e
   print u"還沒開始預訂 %s" %count
   continue
  print u"開始預訂..."
  # sleep(3)
  # self.driver.reload()
  sleep(1)
  print u'開始選擇用戶...'
  for user in self.users:
  self.driver.find_by_text(user).last.click()

  print u"提交訂單..."
  sleep(1)
  # self.driver.find_by_text(self.pz).click()
  # self.driver.find_by_id('').select(self.pz)
  # # sleep(1)
  # self.driver.find_by_text(self.xb).click()
  # sleep(1)
  self.driver.find_by_id('submitOrder_id').click()
  # print u"開始選座..."
  # self.driver.find_by_id('1D').last.click()
  # self.driver.find_by_id('1F').last.click()

  sleep(1.5)
  print u"確認選座..."
  self.driver.find_by_id('qr_submit_id').click()

 except Exception as e:
  print e

if __name__ == '__main__':
 huoche=huoche()
 huoche.start()

以上是“python如何實現火車票搶票”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

布拖县| 武山县| 大石桥市| 星子县| 岳西县| 麻阳| 定安县| 连江县| 乐都县| 稻城县| 裕民县| 宁波市| 新邵县| 高尔夫| 石家庄市| 福清市| 土默特右旗| 招远市| 重庆市| 宁乡县| 济宁市| 舒城县| 莱西市| 望都县| 和静县| 冷水江市| 江陵县| 吉安市| 大港区| 广南县| 定南县| 平罗县| 江永县| 临潭县| 鄂托克前旗| 合阳县| 木兰县| 广安市| 扬中市| 鲁甸县| 阿鲁科尔沁旗|