当前位置: 首页 > web >正文

【爬虫】12306查票

城市代码:

 

 没有加密,关键部分:

完整代码:

import json
import requests
with open(r'E:\学习文件夹(关于爬虫)\项目实战\12306\城市代码.json','r',encoding='utf-8') as f:city_code=f.read()
city = json.loads(city_code)
go_city=input('请输入出发地:')
to_city=input('请输入目的地:')
go_time = input('请输入出发时间(格式为:2025-05-12):')
cookies = {'_uab_collina': '174701576232025273188693','JSESSIONID': '53478FDCC4B9E8626029BE6684F0F1CD','BIGipServerotn': '1306067210.50210.0000','BIGipServerpassport': '803733770.50215.0000','guidesStatus': 'off','highContrastMode': 'defaltMode','cursorStatus': 'off','route': 'c5c62a339e7744272a54643b3be5bf64','_jc_save_fromStation': '%u5E7F%u5DDE%u5317%2CGBQ','_jc_save_toStation': '%u5E7F%u5DDE%u5357%2CIZQ','_jc_save_fromDate': '2025-05-12','_jc_save_toDate': '2025-05-12','_jc_save_wfdc_flag': 'dc',
}headers = {'Accept': '*/*','Accept-Language': 'zh,zh-CN;q=0.9,zh-TW;q=0.8','Cache-Control': 'no-cache','Connection': 'keep-alive',# 'Cookie': '_uab_collina=174701576232025273188693; JSESSIONID=53478FDCC4B9E8626029BE6684F0F1CD; BIGipServerotn=1306067210.50210.0000; BIGipServerpassport=803733770.50215.0000; guidesStatus=off; highContrastMode=defaltMode; cursorStatus=off; route=c5c62a339e7744272a54643b3be5bf64; _jc_save_fromStation=%u5E7F%u5DDE%u5317%2CGBQ; _jc_save_toStation=%u5E7F%u5DDE%u5357%2CIZQ; _jc_save_fromDate=2025-05-12; _jc_save_toDate=2025-05-12; _jc_save_wfdc_flag=dc','If-Modified-Since': '0','Pragma': 'no-cache','Referer': 'https://kyfw.12306.cn/otn/leftTicket/init?linktypeid=dc&fs=%E5%B9%BF%E5%B7%9E%E5%8C%97,GBQ&ts=%E5%B9%BF%E5%B7%9E%E5%8D%97,IZQ&date=2025-05-12&flag=N,N,Y','Sec-Fetch-Dest': 'empty','Sec-Fetch-Mode': 'cors','Sec-Fetch-Site': 'same-origin','User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/27.0.6.3','X-Requested-With': 'XMLHttpRequest','sec-ch-ua': '"Not/A)Brand";v="8", "Chromium";v="125", "Google Chrome";v="125"','sec-ch-ua-mobile': '?0','sec-ch-ua-platform': '"macOS"',
}params = {'leftTicketDTO.train_date': f'{go_time}','leftTicketDTO.from_station': f'{city[go_city]}','leftTicketDTO.to_station': f'{city[to_city]}','purpose_codes': 'ADULT',
}response = requests.get('https://kyfw.12306.cn/otn/leftTicket/queryG', params=params, cookies=cookies, headers=headers)
# print(response.status_code)
data = response.json()['data']['result']
for i in data:index = i.split('|')# page=0# for j in index:#     print(j,page,sep='===序号为')#     page+=1checi=index[3]go_time=index[8]to_time=index[9]time=index[10]vip=index[32]ydz=index[31]edz=index[30]dict={'车次': checi,'出发时间': go_time,'到达时间': to_time,'历时': time,'商务座': vip,'一等座': ydz,'二等座': edz}print(dict)

 效果:

http://www.xdnf.cn/news/5803.html

相关文章:

  • android特许权限调试
  • 特伦斯折叠重锤V70:实现专业演奏,从这里开始
  • DES两种加密模式
  • 普林斯顿数学三剑客读本分析。
  • element ui 实现el-form表单校验不通过时自动滚动到不通过的第一项去
  • 【题解-洛谷】B3881 [信息与未来 2015] 拴奶牛
  • 告别静态配置!Spring Boo动态线程池实战指南:Nacos+Prometheus全链路监控
  • 今日行情明日机会——20250512
  • std::move 和 std::forward
  • 图像的EXIF方向信息(Orientation标签)
  • MySQL 备份与恢复
  • 45、跳跃游戏Ⅱ
  • JavaScript双问号操作符(??)详解,解决使用 || 时因类型转换带来的问题
  • 消息队列RocketMQ-docker部署保姆级教程(从0到1)(2)
  • 16.three官方示例+编辑器+AI快速学习webgl_buffergeometry_lines_indexed
  • apt 软件源与 Docker 镜像源
  • Westlake-Omni 情感端音频生成式输出模型
  • 软考高分备考秘籍:综合知识、案例分析、论文全攻略
  • 如何使用VBA宏高效操作Word文档中的表格(对齐与样式)
  • 六、STM32 HAL库回调机制详解:从设计原理到实战应用
  • nginx-整合modsecurity做waf
  • Ubuntu 22初始配置(root、ssh)
  • 航电系统之电传飞行控制系统篇
  • IDR方程迭代求解算法介绍与比较
  • Ollama+OpenWebUI+docker完整版部署,附带软件下载链接,配置+中文汉化+docker源,适合内网部署,可以局域网使用
  • Java 线程的堆栈跟踪信息
  • 《Python星球日记》 第62天:图像方向综合项目(猫狗分类)
  • Java自动化测试
  • 2025年5月13日 奇门遁甲与股市
  • 学习笔记:黑马程序员JavaWeb开发教程(2025.4.3)