當前位置:
首頁 >
《火车站信息显示》
發布時間:2024/1/18
36
豆豆
#conding=utf-8#火車站信息顯示import requests#xls 文件讀取 火車站代碼導入
import xlrd
import os
#表格顯示信息
from prettytable import PrettyTable#打開文件
workbook = xlrd.open_workbook(r'D:\untitled\hc.xls')
#讀取第一個頁面
sheet = workbook.sheet_by_name(workbook.sheet_names()[0])#寫入數組
listdd=[]
for i in range(1,sheet.nrows):dd=sheet.row_values(i)dds=dd[0].split('|')ddds=[dds[2],dds[3]]listdd.append(ddds)os.system('cls')
word = input('始發站:')
word2 = input('到達站:')
shij=input('日期2018-11-02格式:')
print('正在查詢...')
#轉換對應火車站代碼
for i in range(len(listdd)):global worddif word == listdd[i][0]:wordd = listdd[i][1]for i in range(len(listdd)):global wordd2if word2 == listdd[i][0]:wordd2 = listdd[i][1]#頭信息
header={
'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
}#替換火車站 日期
url='https://kyfw.12306.cn/otn/leftTicket/query?leftTicketDTO.train_date='+shij+'&leftTicketDTO.from_station='+wordd+'&leftTicketDTO.to_station='+wordd2+'&purpose_codes=ADULT'
response=requests.get(url,headers=header)
response.encoding=response.apparent_encoding
#接收數據
pp=response.json()
idd=pp['data']['map']
pp=pp['data']['result']lists=[]
#表頭
biaotou=[' 車次 ','出發站 ','到達站 ','開始時間','到達時間',' 歷時 ','商務座 ','一等座 ','二等座 ','高級軟臥',' 軟臥 ',' 硬臥 ',' 軟座 ',' 硬座 ',' 無座 ']
aa=PrettyTable(biaotou)
for i in pp:list=[]list=i.split('|')lists.append(list)
for d in lists:kk=[]for i in idd.keys():if d[6]==i:d[6] = idd[i]elif d[7]==i:d[7] = idd[i]kk = [d[3], d[6], d[7], d[8], d[9], d[10], d[32], d[31], d[30], d[21], d[23], d[28], d[24], d[29], d[26]]for k in range(15):if kk[k]=='':kk[k]='--'aa.add_row(kk)print('查詢結束,共有{0}趟列車。'.format(len(lists)))print(aa)'''
車次 3:K7727
出發站 6:BXP
到達站 7:TJP
開始時間 8:00:42
到達時間 9:02:33
歷時 10:01:51
商務座 32:5
特等座
一等座 31:14
二等座 30:有
高級軟臥 21:4
軟臥 23:6
硬臥 28:有
軟座 24:有
硬座 29:有
無座 26:無'''
?
轉載于:https://www.cnblogs.com/huazhou695/p/9882854.html
總結
- 上一篇: Web大学生个人网页作业成品——学生个人
- 下一篇: String, StringBuffer