点击上方“数据管道”,选择“置顶星标”公众号
干货福利,第一时间送达
梅宁航 发自 凹非寺
量子位 报道 | 公众号 QbitAI
马斯克用火箭把人送上天,SpaceX粉丝把火箭有关信息贴到GitHub。4k+ Star,GitHub热榜,SpaceX粉丝组织r/SpaceX公布了他们的REST API。△r/SpaceX
r/SpaceX是SpaceX粉丝自发组织的社区,日常搜集整理SpaceX的火箭?发射信息。实际上,这不是他们第一次贡献有关数据,之前他们就整理开源过火箭发射Timeline。△SpaceX发射时间线
优秀的同一批人,再次出手。他们整理的API,基本包含了SPaceX成立迄今的所有火箭数据。API包含SpaceX的龙飞船、Starship、发射历史数据、核心舱、起落架、载荷信息等等,应有尽有。这些能拿来干什么?REST API包含三大部分,clients、app(应用)和原始数据。其中,API Clients是对现有关于SpaceX的api合集,降低了以往信息查找、汇总的难度。△clients详细列表
怎么拿到信息呢?可以在你的能力范围之内随意使用,当然,版权归属于SpaceX。REST API数据格式支持json,并且提供多种语言接口,比如C#、Python、PHP、Objective-C等格式。例如,针对历史活动信息的查询步骤如下:1、查询信息链接,可选用Postman查看API信息。△获取API示例
2、选择任意一门语言,编写适合的查询语句。以Python为例:url="/v3/history" payload={} files={} headers={} response=requests.request("GET",url,headers=headers,data=payload,files=files) print(response.text.encode('utf8'))importrequests
那么你会看到json格式的回传数据:
△response信息
当然,你也可以选择你喜欢的语言去编写获取API的代码。拿到数据之后,就可以做一些有意思的事情了,r/SpaceX列出一些示例应用,并且大多开源,可以上手学习。△app列表
比如表中的网站,能实时记录SpaceX最新发射消息。网页不方便查询,还可以安装到手机上查看发射信息,比如SpaceX GO!。可以这样说,REST API记录的是整个SpaceX和火箭的记录信息,但是需要指出的是,这个API不能让你来造火箭,并不包含火箭的制造步骤。准确的说是SpaceX的历史详细信息记录表,拿来造火箭是不行的,可以拿来看?火箭发射。部署方式一览
REST API提供的信息存储在MongoDB中,查询格式支持json,并且借助Postman部署,便于查询和使用。△Postman界面
当然,如果你想拉取整个项目进行开发,可以通过在线查询api的方式进行,也可以通过docker部署和本地部署,三种方式,看你喜好。1、docker部署步骤:docker-compose build docker-compose upgit clone /r-spacex/SpaceX-API.git && cd SpaceX-API
2、本地部署(不使用docker)2.1 克隆项目至本地
git clone /r-spacex/SpaceX-API.git && cd SpaceX-API
2.2 使用npm安装
npm install
2.3 进行测试
npm test
2.4 开始使用
npm test
动手试试
REST API项目提供了丰富的数据,关于SpaceX历史活动信息基本都在其中。粉丝们借助项目开发了很多有意思的应用,但是国人程序员参与度比较低。如果你有兴趣,欢迎去试试?传送门:/r-spacex/SpaceX-API/?version=latest/r/spacex/- end -
推荐阅读
用这样的分析思维驱动业务 | 附实际案例
数据分析岗:该去阿里还是字节跳动?Github上这些可视化面板也太好看了趴