爬取 携程国际机票,大家有好的方法吗

1.最近再做爬取携程的国际机票,之前没写过爬虫,边看边学,发现网上有很多爬取携程国内机票的教程,爬取国际机票的很少。
2.因为携程是异步加载的并且参数很多,还有动态的参数,看着比较麻烦。所以我现在是用的 selenium来模拟浏览器抓取的。但是效率又太低。大家一般抓取这样的网站采取什么技术或方法,麻烦有了解这方面的指点一下

阅读 8.5k
4 个回答

刚看了下携程的网址.

这个url是北京(BJS)到布拉格(PRG) 2018-04-11 当天的全部机票.
http://flights.ctrip.com/inte...

这个url是北京(BJS)到雅典(ATH) 2018-04-03 当天的全部机票.
http://flights.ctrip.com/inte...

两个url只是城市的编号不同. 如果想获取北京到世界各地的机票信息. 只需要拼接下DCity就可以获取到

想获取 2018-04-012 的机票, 就把日期改一下.
这样就获取到了url.然后模拟发起请求,获取请求页面的Document树,在去解析里面的数据.
感觉还可以.并不是特别难. 难点就是获取各个城市的标号.
另外如果携程有反爬虫,可以用代理ip.这样成功率会高很多.不会被封.

@可好了 谢谢你的回复,我已经把需要的飞机场代码给爬取到了我是使用的这个地址拼装的http://flights.ctrip.com/inte... ,现在的主要是效率,太低。模拟一次请求,需要大概20秒的时间,才能把整个航线的航班数据爬取下来。 多线程的跑selenium 有很多问题。今天在看一下

新手上路,请多包涵

我今天也遇到这个问题了,模拟参数请求返回为空
图片描述

新手上路,请多包涵
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题