雖然這篇PhantomJS鄉民發文沒有被收入到精華區:在PhantomJS這個話題中,我們另外找到其它相關的精選爆讚文章
在 phantomjs產品中有2篇Facebook貼文,粉絲數超過2,018的網紅Kewang 的資訊進化論,也在其Facebook貼文中提到, 小編最近一直用 Impala 在分析產品的 API log,雖然有下 SQL 做了一些圖表 (DAU, MAU) 出來,但如果要讓非資訊人員自己下指令產生這些圖表的話,真的是會要了他們老命。尤其這些圖表如果是要給 PM、行銷看的話,每隔幾天就要叫工程師跑圖表,工程師真的會累死 Orz。 雖然有 E...
同時也有10000部Youtube影片,追蹤數超過2,910的網紅コバにゃんチャンネル,也在其Youtube影片中提到,...
phantomjs 在 Kewang 的資訊進化論 Facebook 的精選貼文
小編最近一直用 Impala 在分析產品的 API log,雖然有下 SQL 做了一些圖表 (DAU, MAU) 出來,但如果要讓非資訊人員自己下指令產生這些圖表的話,真的是會要了他們老命。尤其這些圖表如果是要給 PM、行銷看的話,每隔幾天就要叫工程師跑圖表,工程師真的會累死 Orz。
雖然有 ELK 這種整套都弄好好的系統,但這種系統還是工程師比較知道如何操作。小編想了一下,自己寫一套讓大家一鍵產生圖表還比較方便,於是就花了兩三天做了這個「窮人版 ELK」。
本來小編是想直接用 Cloudera HUE 產出來的圖表拿來處理,但因為 HUE 的報表是用 D3 產生出來的,所以如果真要跟 HUE 串接的話,除了 auth 那段要解決之外,還要處理 D3 產出來的互動式圖表。看了一下實在太花功夫,所以小編就放棄這段,直接重頭開始刻。
這次開發用了下面幾套工具,一直 pipe 來 pipe 去的,小編頭都快昏了 Orz。如果要跟數據打交道的話,真的要好好學一下 Linux 上的各種文字處理工具:
1. impala-shell:用 Impala 下 SQL 指令,將資料拉回來,參數 -B 可以將結果產生成 CSV 格式
2. csv2json:因為這次用的圖表工具只吃 JSON 格式,所以先將資料從 CSV 轉為 JSON,才能繼續下一步
3. json2highcharts:自己開發的程式,因為小編這次用的圖表工具 highcharts,無論是資料或設定檔 (像是顯示直條圖或折線圖) 都是 JSON 格式,所以要把這些資料跟設定檔轉成 highcharts 能吃的格式,所以又做了一次 JSON 轉換
4. highcharts-export-server:最後一步就是要呼叫產生圖表的工具了,小編找了蠻多的能在 command line 執行的圖表工具,有要裝 cairo 的,有要裝 png lib 的,還有一些要重頭 make 的,實在都太麻煩。後來看到這套是使用 phantomjs,直接跑 browser render,雖然肥了一點但不用管 dependency 就是爽 XDD
把這 4 步都執行完之後就會產生圖表了。但為了方便之後產生新類型的圖表,小編打算只要讓工程師把寫好的 DSL 丟到 server 上,非資訊人員就可以直接用網頁操作了。下一篇再來講如何開發 DSL 好了 (又是一連串的文字處理 Orz)。
* backend-log-explorer:https://github.com/mitaketw/backend-log-explorer
* 想了解在執行 Impala 之前,這些資料做了什麼處理嗎?推薦強者小編同事的文章:https://www.facebook.com/groups/616369245163622/permalink/1329521563848383/
#log #impala #highcharts #elk #資料分析
phantomjs 在 軟體開發學習資訊分享 Facebook 的最佳貼文
網頁爬蟲技術是在資料收集很普遍的技術,除了資料收集,也常被開發者用來做自動化的應用,例如使用爬蟲收集特定商品的特價資訊,然後主動發出通知,這堂課也會教你如何處理使用 Javascript 產生的網頁內容和內含表單的網頁要如何抓取資料 ( 例如到 Agoda 搜尋住宿資訊前要先填表單,送出後才能得到要抓取的資料 ) ,會了這一招,等於也可以用同樣的技術做網站自動化整合測試
從這 2 小時的課程,你會學到
1. 知道如何使用 JavaScript 進行資料探勘
2. 能夠獲取、下載和保存網站資料
3. 了解如何使用 CasperJS 和 PhantomJS
4. 將你所學到的知識應用於前端測試
5. 開發自己的 script 來抓取資料
6. 更好地了解函數程式設計( Functional Programming )
7. 充分了解 JavaScript 和 jQuery 選擇器
>英文字幕:有
https://softnshare.wordpress.com/…/scrapingwebsiteusingpha…/