近期在v2ex有用户说马斯克开价5k刀让美国一少年不在twitter上爆料他的行程,但是该少年没有接受,并试图让马斯克提高价格到5W刀,当时就大概看了两眼就过去了。这两天在github上看到了一个开源的工程(plane-notify),大概就是这个少年开源的,工程的作用就是追踪某个飞机的行程,并自动发布到twitter等公开媒体上。
开始的时候有点差异,这个只是追踪某个航班的信息,怎么能知道马斯克的个人行程的。能知道马斯克坐那个航班我还需要这个玩意?后面一想,奥,马斯克一般做的是私人飞机啊,这玩意又不长换,追踪它的私人飞机飞那里,可不就知道他行程了。
今天有空把代码拉下来看了下,按照README运行了下。反正一直就是在不断的刷着各种颜色条,跑了一会感觉不对,这玩意像是没有结果了。
异常运行结果
后续又看了下README,发现这个ICAO需要自己重新设定的,原来的那个是随便搞的,肯定是什么信息也查不出来,所以才一直这种绿红的色条一直不断出现,而没有什么实质性的信息出来。
google查了一下这个ICAO,结果倒是很明确,就是飞机的一个唯一应答码/标示码。但是找遍了半天也没找到一个有效的ICAO。主要是也没有现成的例子。在各种飞行网站中找了半天现在还在天上的飞机,也是没找到这玩意。又尝试了几次,终于是有点眉目了,就是过程有点搞。找ICAO的步骤如下:
-
到FlightAware网站上根据起飞地和目的地找对应的还在天上飞的航班。然后根据航班获取相应的航空公司和机型数据。
航空公司及其相应机型数据
-
到民航休闲小站中找各个航空公司目前所有的飞机型号及其对应的注册号。
吉祥航空所有飞机型号及其对应注册号
-
根据注册号到网站Aircraft查询其响应的ICAO。⚠️这个网站是要注册才能查询的。
根据注册号获取ICAO
上面的1,2两步其实都可以在FlightAware完成,直接获取注册号。不过这个需要充值FlightAware会员,为了省钱,我们还是麻烦点吧。 将第三步我们拿到的ICAO替换到原来的值后,重新运行。日志终于打出了相应的航班信息,并最终生成了一张行程图。但是有点奇怪的是,怎么起飞地是赫尔辛基。我搜索的航班明明是上海虹桥到三亚啊?
最终生成的奇怪的行程图