@简叔 ,你有开放 API 的计划吗?

@简叔:

您忙,一句话,我正在做一个个人搜索网站,想把自己的一些数据聚合起来,需要上的数据。想问问有开放 API 吗?或者有开放 API 的计划吗?

如果您还有时间,容我慢慢细说开放 API 的好处。

优秀的网站都有两套接口

一套是页面,供用户访问;一套是 API ,供程序访问。照顾这帮难缠的用户就够麻烦的了,为什么还有照顾程序的感受?简短地说,页面越是设计精良,越是照顾人的视觉享受,就越阻碍数据的交流。

原本我们只是希望看一段文本,但网站给我们传来了 HTML 5 ,传来了 CSS 3 ,传来了 JavaScript ,人眼是看着舒服了,但程序傻眼了。程序需要的只是「那段文本」。「文本」是皮,HTML, CSS, JavaScript 都只是毛。皮之不存,毛将焉附。API 就是只传输「数据的本体」。而 MarkDown 也正是应这一需求而生的语言。

程序要数据来干什么?很多网站,比如豆瓣,比如微博,本质上做的是数据服务。个人开发者有了数据,可以做二次开发。丰富网站的周边,把社群做大。

@简叔 ,你有开放 API 的计划吗?_第1张图片
根据饭否上的时间数据制作的晚睡热力图。点击方块可以查看当日最晚的一条饭唠。

不是说这些开发,网站自身做不了,而是很多需求要么还没有大到引起网站开发者重视,要么网站开发者不了解。反过来,这些二次开发作品也可以为网站完善提供思路。

@简叔 ,如果您家网站也是做的数据生意,开放 API 真的值得考虑。

数据是拦不住的

豆瓣是我非常喜欢的一个去处。豆瓣倒是开放 API ,但不支持个人开发者申请 API Key ,而且单 IP 访问有「150 次 / 小时」的限制 作为一个不收费的服务,我不该奢求太多,但数据是拦不住的。我通过抓取网页,还是拿回了自己的数据。但这样极大地增加了服务器的负担(因为网页的数据量远远大于 API ),所以我跑程序之前也很谨慎。

而最重要的是,就算我把豆瓣全扒下来,人们也不可能访问我的「米瓣」,而不是「豆瓣」!

目前,数据的利用是极不充分的

这倒不是网站开发者的问题,而是目前大的社区都是在「AI 时代」之前搭建的,大家还不习惯用「AI 的思维」重新审视数据的价值。

比如:blog 网站,手头既然有那么多优质的文本数据,为什么不去分析下博主的写作风格,检测遣词造句中的翻译腔,提供修改建议呢?

比如:实时消息类网站,为什么不去分析用户的习惯,提供生活建议呢?

比如:摄影网站,为什么不去统计照片的参数,告之用户他们最喜欢的焦段?

比如:晒字帖的网站,为什么不让机器去学习「好字」的风格,给出习作的评分?

……

这之中可能有用户隐私的权限问题,但也反映出数据的价值确实没能真正发挥出来。


P.S. 简叔告我目前没有精力开发 API 后,扭头去扒网页了。顺手写了个简易版的html2markdown()(仅适用于):

class String
  def to_markdown
    self.gsub(/(.+?)<\/code>/) { "`#{$1}`" }
        .gsub(/.+?\[(\d+)\]<\/a><\/sup>/) { "[^fn#{$1}]" }
        .gsub(/(.+?)<\/h\1>/) { '#' * $1.to_i + ' ' + $2 }
        .gsub(/(.+?)<\/em>/) { "**#{$1}**" }
        .gsub(/
/, '----') .gsub(/
  • \n?(.+?)<\/li>/m) { "- #{$1}\n"} .gsub(/<\/?ol>/, '') .gsub(/
    (.+?)<\/code><\/pre>/m) { "\n#{$1.gsub(/^/, '    ')}" }
            .gsub(//) { '!' + "[#{$2}](http:#{$1})"}
            .gsub(/
  • 你可能感兴趣的:(@简叔 ,你有开放 API 的计划吗?)