这几天做的一个爬天朝区气象雷达数据的爬虫,每 10 分钟 500+帧,跑 GAE 存 GitHub

2014-08-10 22:43:06 +08:00
 akfish
作为一个数据控,爱好各类实时数据,最近在用 HTML5 把天朝区土鳖的气象雷达图去土鳖化,比如:

经过 HTML5 拖下来一堆算法撸过以后变成:


由于 Canvas CORS 的的限制,必须把图片爬下来放到同域名上,经过一番折腾撸出这样一个脑洞略大的方案:
找了一圈国外免费的云服务,能访问 nmc.gov.cn 的也就只有 GAE 。
天朝目前有 167 个气象雷达站,平均 10 分钟更新一帧(部分是 5 分钟),每帧 35k ,一天会产生 800M+的数据,GAE 是放不下的,于是用 GitHub API 放 GitHub Pages 上。
同时需要产生 json 文件供前端调用,撸了一圈发现 GAE 的 datastore quota 最多爬 3 次就会被撑爆,于是又用 GitHub API 把 commit 后的 git tree 拖回 GAE 当数据库用。

每个站要在百度地图上放叠加层,需要知道中心的经纬度,以及每帧数据的范围。之前爬到一个内部的 xml ,有所有站点的坐标,于是很愉快的解决了。数据范围没有现成的数据,于是顺便写了个简单的 OCR 算法从图片上识别出来。最后这些数据和爬虫爬到的整合,生成一个 json 文件供前端调用。

目前是 GAE 上跑两个 application 分时爬(一个 application 的 bandwidth quota 只够爬半天),GitHub 的 Repo 一天一清,避免超过 1GB 大小的限制被和谐。

数据有保障了,又可以愉快的把前端撸完早日上线。

爬虫源码:
https://github.com/catx-weather/radar-bot
爬虫数据:
https://github.com/catx-weather/data
OCR 脚本:
https://github.com/catx-weather/frame-range-ocr
7219 次点击
所在节点    分享创造
27 条回复
neoz
2014-08-10 22:47:04 +08:00
虽然没多大 用,但是看起来X格很高!赞!
mywaiting
2014-08-10 22:51:52 +08:00
LZ这么牛逼,你妈知道的吗!赞+1
vigoss
2014-08-10 22:53:14 +08:00
帅哭。
arnofeng
2014-08-10 22:53:32 +08:00
太流弊
procen424
2014-08-10 22:57:45 +08:00
官方雷达图虽然看上去土鳖,但是像素点的颜色和位置是精确的,结合刻度能读出非常有效的信息。
30dbZ基本就要下雨了 40dbZ就是短时雷雨大风天气
这么一处理反倒没法看了。。。
akfish
2014-08-10 23:14:49 +08:00
@procen424 处理后的位置也是精确对齐的,花了不少精力保证爬到能用来保证对齐精度的数据。
像素的颜色只是换了套伪彩方案而已,数据依然是用的原始数据,并且能保留空间分辨率无级放大。
后面会加上交互,鼠标到任意点就能获得该点dBz大小,比官方的易读得多了。
akfish
2014-08-10 23:18:13 +08:00
@procen424 见append。
chenillen
2014-08-10 23:36:32 +08:00
github 服務掛了肯定是因為這個 project 的!lz 贊!!!
glogo
2014-08-10 23:54:36 +08:00
赖斯啊!
WangYan
2014-08-10 23:59:54 +08:00
点个赞,若提示dBz大小,就真的比官方的易读多了
scylla
2014-08-11 00:03:49 +08:00
lZ, Tai Niue be le, zan!
vbs
2014-08-11 00:27:52 +08:00
nb。。。。
lz你那还有其他数据?
lcj2class
2014-08-11 07:41:20 +08:00
等会必须fork
wzb350
2014-08-11 09:39:07 +08:00
不明觉厉
superbear
2014-08-11 09:50:29 +08:00
真厉害,居然把gitgub当数据库用!
valianliu
2014-08-11 10:37:45 +08:00
坐等前段上线,太流弊了。
KillAd
2014-08-11 10:42:07 +08:00
能做成站点上线上来才是大家最期待的吧
hao1032
2014-08-11 10:51:26 +08:00
GAE的数据库是不给力,以前爬了几天的数据想删除。到现在已经删了2天了,删一会就提示配额不足,然后只能等到第二天继续删。 哭。。。。。。。。。。。
procen424
2014-08-11 12:48:54 +08:00
@akfish 棒!期待早日上线
0065paula
2014-08-11 14:55:23 +08:00
不知道楼主有没有玩过 caiyunapp.com ?也是获取是实时雷达数据,用来看什么时候雨停还不错。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/127110

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX