PHP前端开发

12306 列车信息获取为空:如何使用 Cookies 解决?

百变鹏仔 5天前 #Python
文章标签 如何使用

12306 列车信息获取遇到问题:输出 json为空

问题描述:

通过以下代码试图获取 12306 列车信息,但输出结果为空。

import requestsdata_t = requests.get('https://kyfw.12306.cn/otn/leftticket/query?', headers={                               "user-agent": "mozilla/5.0 ...",                               "referer": "https://kyfw.12306.cn/otn/leftticket/init?linktypeid=dc"                              }, params=add_url_queryz_params())print(data_t.json())

参数:

leftticketdto.train_date=2021-04-29&leftticketdto.from_station=bjp&leftticketdto.to_station=shh&purpose_codes=adult

解决方案:

要解决此问题,需要在请求中添加 cookies。例如:

import requestscookies = {    '_jc_save_fromDate': '2021-05-01'}headers = {    # 其他 header 信息}params = {    # 其他参数}response = requests.get('https://kyfw.12306.cn/otn/leftTicket/query', headers=headers, params=params, cookies=cookies)print(response.json())