python 爬取携程网飞机航班信息 - Go语言中文社区

python 爬取携程网飞机航班信息


昨天去面试 面试官给了一道题 让我抓取一个网站的信息 心想:就这么简单 小case嘛 然而打开携程网站 抓取了一下
这里写图片描述
结果没找到飞机航班信息 ….. 有重新打开 了携程的网站 一看 我擦 数据居然是异步加载的 这回有的玩了
打开控制台 查看信息 看到开始的时候 果然没有航班数据
这里写图片描述
看到了这个请求地址返回的信息有些像 航班数据 这里写图片描述
试着用python 请求一下 看下数据格式

import urllib.request
import json
url = 'http://flights.ctrip.com/domesticsearch/search/SearchFirstRouteFlights?DCity1=SHA&ACity1=BJS&SearchType=S&DDate1=2017-10-22&IsNearAirportRecommond=0&LogToken=d5c2cdde121640c587b2737a160555cc&rk=6.87741369292242094159&CK=B4828167808BE5DE87C5814B02C113A3&r=0.44130167627926424060312'
headers = {
    "Host": "flights.ctrip.com",
    "User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0",
    "Referer": "http://flights.ctrip.com/booking/SHA-BJS-day-1.html?DDate1=2017-10-22",
    "Connection": "keep-alive",
}
res = urllib.request.Request(url,headers=headers)
res = urllib.request.urlopen(res).read().decode("gb2312")
jsonData = json.loads(res)
print(res)

通过上面的请求我们看到 返回的数据编码为 gb2312的 我们看到了这里的信息确实是航班信息这里写图片描述

看到航班信息的数据在 fis 这个数组下面 我们就循环一下看一下航班信息是否正确这里写图片描述

我拿着去比较 信息是正确的 最后激动的 交了项目 offer 最后还是没拿到 技术太菜 求大牛带 q码823688826 小白一起交流 哈啊

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_39178358/article/details/78333066
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2019-09-04 14:01:16
  • 阅读 ( 1927 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢