python火車餘票查詢(s1)

2021-08-15 20:40:42 字數 1524 閱讀 3764

import datetime

#車站僅限西安、北京(pinyin)

print('---歡迎使用火車票查詢系統---')

print('本系統可查詢未來7天內火車票餘票資訊')

#輸入查詢條件

from_station = input('請輸入出發車站(xian):')

to_station = input('請輸入到達車站(beijing):')

from_date = input('請輸入出發日期(2018-01-01):')

#判斷輸入合法性

valid_from_station = false

valid_to_station = false

valid_from_date = false

while valid_from_station==false and valid_to_station==false and valid_from_date==false:

#判斷輸入出發車站合法性

if from_station == 'xian' or from_station == 'beijing':

valid_from_station = true

#判斷輸入到達車站合法性

if to_station == 'xian' or to_station == 'beijing':

valid_to_station = true

#判斷輸入出發時間合法性

today = datetime.date.today()

year = int(from_date[:4])

month = int(from_date[5:7])

day = int(from_date[8:])

qday = datetime.date(year,month,day)

lastday = today + datetime.timedelta(days=7)

if today <= qday and qday <= lastday:

valid_from_date = true

if valid_from_station == false:

from_station = input('請重新輸入出發車站(xian):')

if valid_to_station == false:

to_station = input('請重新輸入到達車站(beijing):')

if valid_from_date == false:

from_date = input('請重新輸入出發日期(2018-01-01):')

#執行查詢

print('正在查詢.......')

#顯示查詢結果

print('你的出發站:', from_station)

print('你的到達站:', to_station)

12306餘票查詢 二 獲取餘票資料

上節分析了獲取餘票資料的請求,本節開始抓取資料class get tickets def init self,start station,destination,date self.date date self.params 首先是傳遞你到底要查什麼,就是前面分析所需的三個引數 其實這裡要判斷一下,...

火車票餘票問題的演算法解析 續

在之前的文章中,我分析了火車票餘票的問題,提供了乙個高效的演算法。在本文中,我們繼續討論無座位號的餘票計算以及逐票更新的問題。之前的分析參見 還是以站點數 6,座位 5為例 如果不考慮座位號,我們只需要考慮每站售出的票數即可。1 2 的餘票數即為 總票數減去售票數 5 2 3 2 3 的餘票數即為 ...

12306餘票查詢 四 餘票價格併入資料集中

因為獲取每個車次的餘票,都需要請求資料,會有阻塞,這裡採用協程,提高效率 首先,寫個函式,是處理單個車次的加入票價行為 def get one price self,info dict 呼叫獲取票價的函式 price dict get price info dict train no info di...