Blockspring - Cover

寫爬蟲程式、用爬蟲服務好麻煩,即便有 import.io 、  kimonolabs ,還是得點半天再另外整理,要是有個服務直接幫我把我要的資料整理好填到試算表中該有多方便?Bingo , 你需要 Blockspring ! Blockspring 為資料服務提供了 Mircosoft Excel 、 Google Spreadsheet 、 Slack 以及各種程式語言的接口,直接幫你把資料倒到你的試算表中!

若你有用過 Google Spreadsheet ,你可能會知道 importHTML 這個功能;如果你想要用的資料是用表格的方式放在網頁上,你可以將網址傳到 importHTML 之中, Google Spreadsheet 會幫你將資料直接讀到試算表的儲存格之中。

然而,有時候我們想要的是 API ,這該怎麼辦呢?「我想要一份臉書的 Edward 使用者清單」「可以幫我推薦幾篇相關的維基文章嗎?」「我想知道紐約時報有哪些報導談到馬英九」像這樣的需求,常會需要使用者以登入的身份取得資料,也會需要額外的資料整理,而這些資料通常也都是 JSON 格式,要直接使用也有些麻煩。

如果有個服務,左手接 API ,右手接試算表,中間你還可以很容易的調整參數,那該有多好呢? Blockspring 就是這樣的服務。

services of blockspring

* Blockspring 目前已經有相當多的 API 接口供試算表使用

Blockspring 提供了一個中介的平台,任何人都可以在上面開發「Block」( Blockspring Functions ),這些 Block 則會透過 Blockspring 的包裝,再經由各種不同的管道串接到資料使用者的手上,其中包括了 Microsoft Excel 、 Google Spreadsheet 、 Slack 等等。

舉例來說,使用者「pkpp1233」提供了「Facebook User Search」的 Block ,在該 Block 的頁面我們可以取得搜尋使用者用的 Google Spreadsheet 指令 ( 參考下圖 Step 3 處),比方說若要尋找所有叫做英九的使用者,我們可以在 Google Spreadsheet 的儲存格中貼上這串指令:

  =BLOCKSPRING("facebook-user-search", "name", "英九")

我們也可以直接在頁面中測試搜尋的結果,例如:
facebook search

要在 Google Spreadsheet 中直接載入這個資訊,我們首先需要安裝 Blockspring for Google Spreadsheet,可以從 Spreadsheet 的主選單 → Add-ons → Get Addons 中搜尋 “Blockspring" 取得,或者是直接透過這個連結來安裝。

search for blockspring

同時,我們需要在 Blockspring 註冊自己的帳號。兩個動作完成以後,開啟 Google Spreadsheet 的主選單 → Add-ons → Blockspring → Sign in to Blockspring 來登入,接著就可以將剛剛取得的指令貼上 Spreadsheet 來獲得資料囉:

get facebook user in spreadsheet

上圖紅框的部份即是我們剛剛複製的 Block 指令,用來搜尋所有的「英九」;我們將這串字貼到儲存格 A1 的位置之後,它便會自動載入下方的內容,像是「英十九」、「英九」、「王英九」以及他們在臉書的使用者識別碼。是不是相當方便呢?

Blockspring 也直接在試算表中提供使用介面,讓我們可以在應用程式中直接搜尋想要的 API。以 Google Spreadsheet 為例,下圖右方的區塊即是 Blockspring 提供的介面,我們可以透過 Browse 鈕搭配搜尋來找有興趣的 API (紅框 1);下圖顯示的即是找到 Facebook 的服務,列在下方 Blocks 的地方。

這裡值得注意的是,很多網路服務都需要我們登入來使用,所以我們要在 Blockspring 使用這類服務時,常會伴隨著一個登入鈕;如下圖紅框 2 的地方是已經登入後的樣子。如果碰到資料無法順利載入的狀況,我們可以點擊我們填入指令的儲存格後接著按「View Cell」( 紅框 3 ) 來看看碰到了什麼錯誤。

panel

Blockspring 的設計概念讓我們可以把 API 當成試算表指令來讀取資料,相對的我們也可以提供自己的 API 給其它使用者串接。「Create a Block」功能提供了一個開發環境,讓我們可以同時在上面撰寫 API 接口、測試與發布 Block 。

block editor

Blockspring 支援了 Javascript 、 Python 、 R 、 php 與 Ruby 等五種開發語言,我們選擇好了以後 (上圖紅框 1) 便可以在下方的編輯器裡 ( 上圖紅框 2 ) 開發程式、並在右方 ( 紅框 3 ) 設定使用者可以調整的參數。最後再用下方的「Test Run」與 「Publish」鈕 ( 紅框 4 ) 來測試執行並發布,就可以讓別人使用你的 API 了。

目前 Blockspring 已經支援了相當多不同的網路服務,包括維基百科、亞馬遜、臉書、Google、Youtube 等等,各種網路服務中可以串接的 API 數量都不一定,也有混搭數種 API  做成的服務,大家可以透過 Block 的瀏覽搜尋介面來尋找是否有自己需要的 API,若沒有自己想要的 API ,甚至也可以提出需求,由 Blockspring 評估並為你量身打造。

結語

跨領域的資料分析與應用是當代的趨勢,我們之前不僅看到了如 DataHero 串接服務與圖表、也看到了像 Raw 這樣連結資料與圖表的服務,或是如 Kimono 這類轉換網頁成為 API 的服務,而現在 Blockspring 則替使用者連結了 API 與試算表,感覺要應用資料越來越容易了!這些工具都為資料使用者降低了應用的門檻,是不是覺得有他們真好呢?現在就來玩玩看 Blockspring 吧!


Written by infographics.tw

2 Comments

infographics.tw

您好, 這種資料要爬比較麻煩, 因為他是透過程式繪製、然後進到 Google Maps 中的;你可以嘗試解讀一下他的程式碼,也許會有原始資料檔,否則除了手工之外應該沒有"更簡單"的方式可以撈到資料了。

Reply

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *