这几天做的一个爬天朝区气象雷达数据的爬虫,每 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
7038 次点击
所在节点    分享创造
27 条回复
openroc
2014-08-11 14:56:25 +08:00
@hao1032, 多弄几个GAE,轮流爬。:)
akfish
2014-08-11 15:35:22 +08:00
@0065paula 不错的app,我目前侧重交互和数据可视化,多增加几种数据源后才会开始做预报算法。
akfish
2014-08-11 15:36:15 +08:00
@vbs 目前只是雷达,这个做完善后再爬别的。
no13bus
2014-08-11 16:57:32 +08:00
@akfish 数据可视化,楼主玩 http://processingjs.org/
吗?
akfish
2014-08-11 17:21:21 +08:00
@no13bus 小玩过,还没在项目里用过。
hao1032
2014-08-12 10:21:47 +08:00
@openroc 我是删除数据
crossmaya
2014-10-18 17:13:51 +08:00
不错,mark!

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

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

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

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

© 2021 V2EX