首页上一页 1 下一页尾页 4 条记录 1/1页
快手爬票内容咨询
发表在Python图书答疑
2019-09-20
《零基础学Python》第14章 网络爬虫开发
是否精华
是
否
版块置顶:
是
否
快手爬票的例子,有两个问题想咨询下。
1、如果我想爬出的数据导到Excel,表头应该如何增加?只能通过 sheet1.write(0,'列数','表头每一列内容') 这种方式吗?有没有快速增加的写法?
2、爬虫代码有时候会报错,报错截图请见附件

import requests
'''5-7 目的地 3 车次 6 出发地 8 出发时间 9 到达时间 10 历时 26 无坐 29 硬座
24 软座 28 硬卧 33 动卧 23 软卧 21 高级软卧 30 二等座 31 一等座 32 商务座特等座
'''
data = [] # 用于保存整理好的车次信息
type_data = [] # 保存车次分类后最后的数据
def query(date, from_station, to_station):
# data.clear() # 清空数据
# type_data.clear() # 清空车次分类保存的数据
# 查询请求地址
url = 'https://kyfw.12306.cn/otn/leftTicket/queryA?leftTicketDTO.train_date={}&leftTicketDTO.from_station={}&leftTicketDTO.to_station={}&purpose_codes=ADULT'.format(date, from_station, to_station)
# 发送查询请求
response = requests.get(url)
print(response.status_code)
# 将json数据转换为字典类型,通过键值对取数据
result = response.json()
result = result['data']['result']
if len(result) != 0: # 判断返回数据是否为空
for i in result:
# # 分割数据并添加到列表中
tmp_list = i.split('|')
# 创建座位数组,由于返回的座位数据中含有空既“”,所以将空改成--这样好识别
seat = [date, tmp_list[3], from_station, to_station, tmp_list[8], tmp_list[9], tmp_list[10]
, tmp_list[32], tmp_list[31], tmp_list[30], tmp_list[21]
, tmp_list[23], tmp_list[33], tmp_list[28], tmp_list[24], tmp_list[29], tmp_list[26]]
newSeat = []
# 循环将座位信息中的空既“”,改成--这样好识别
for s in seat:
if s == "":
s = "--"
else:
s = s
# 保存新的座位信息
newSeat.append(s)
type_data.append(newSeat)
return type_data
if __name__ == '__main__':
newdata = query('2019-09-21','GZQ','CDW')
print(newdata)
购物车
发表新帖
立即签到








