想用爬中爬取途牛网的机票信息,大概每 10 分钟爬去一次来获取最新票价
抓包到的票价 api 请求为: https://flight-api.tuniu.com/query/flight/v1/asyncProd?callback=jQuery17206316937206666016_1510628406488&{"responseId":"ec43b49b-c8e7-11e7-9d34-4603a1ce7740","groupIds":["0","6","1","2","3","4","5"]}&_=1510628408803
这个请求的网址大概每 5 分钟后就会失效,我推测是 callback=jQuery17206316937206666016_1510628406488 这一串变量需要不断的生成最新的
但我对 js 几乎是 0 基础,折腾了一下午都没有找到如何来获取这个变量,还望大佬们能详细的指点迷津。
机票查询网址是: http://flight.tuniu.com/city_BJS_CAN/?start=2017-11-17
1
BiggerLonger 2017-11-14 17:29:28 +08:00
1510628406488 很明顯是 timestamp 吧?
|
2
alphab OP @BiggerLonger 嗯,时间戳,只是这个不知如何破? jQuery17206316937206666016
|
4
vtwoextb 2017-11-14 17:37:56 +08:00 1
和 callback=jQuery17206316937206666016_1510628406488 这个无关 这只不过是 jsonp 格式 请求数据,我刚才测试了一下 途牛应该是 根据 ip 请求次数过于频繁途牛直接给你返回错误了,你等一会在请求 数据是能出来的,看目前情况 你刷的太频繁了 可能会把你的 ip 列入黑名单。我原来也遇到过这种问题 写了一个 动态换 ip 的爬虫 https://github.com/hizdm 你可以参考一下
|
5
p2pCoder 2017-11-14 17:38:04 +08:00 1
callback 是生成用来解决跨域的吧,一般是 jsonp 或者 jquery 加时间戳,你这个中间加了一些随机参数之类
一般是 jquery 的 $.ajax 或者$.getJson 自动生成的 |
6
alphab OP @vtwoextb 感谢,这个 php 版本如何接入 python ? 还是要单独的运行, 大佬有没有详细点的使用说明,小白不知道该如何用...
|
7
vtwoextb 2017-11-15 08:54:03 +08:00 1
@alphab 你可以用 python 语言按照 php 代码的逻辑实现 或者 用 python 调用 php 代码也可以
|
8
hjl87423050 2017-11-16 21:51:42 +08:00 1
python 爬虫视频教程: http://www.sucaihuo.com/search.html?keyword=python&mtype=30
|
9
alphab OP @hjl87423050 谢谢
|