bilibili Down

最近開始學 Swift,第一個作品既題目就係「如何下載 bilibili 的視頻」。

唔想睇廢話請按此

一如所料 Swift 的確比 Objective-C 易學,但又不會因而削弱功能。基本上 Objective-C 做到嘅嘢 Swift 都可以做到。語法亦比較簡單而睇,非常適合入門新手。而好似我咁有啲經驗既都可以學吓,我覺得用 Swift 可以比用 Objective-C 花更少時間去 code 同一樣嘢。

講返「如何下載 bilibili 的視頻」。

經過一輪研究,bilibili 網頁播放器其實會透過一個 API 去拎條片既位置。而呢個 API 就會比返一個 JSON (之前係 XML,好彩我做到最後測試佢就轉做 JSON,唔係就九成唔會改)比播放器,入面就有齊我想要既嘢。問題就係點樣使用呢個 API。

個 API 其實就唔可以就咁用,因為佢有一堆 key 呀 id 呀咁嘅嘢要黎做認證之類。要砌返出黎都幾煩,要分析 HTML,佢個網一改動過就有可能失效。於是我就用最懶嘅方法:WebKit

WebKit 有個好偉大嘅功能,就係佢每 load 一樣嘢都會比個通知你。於是就係用呢個功能去監察住佢幾時 load 果個 API,咁就省去自己砌既麻煩。而代價就係要用多啲時間同 memory…Any肥,總之拎到就得啦…XD

結果大概用左一個星期就一面學 Swift 一面寫咗出黎。

完成品在

Chromium Check for Mac

為什麼我會做這個東東出來呢…因為 Chromium 是沒有自動更新功能的…OTL
當然,我這個 Cocoa 新手只花了一晚做出來,不會有甚麼很了不起的功能,但至少可以查看最新的 SVN revision 以及把它下載會來,總比自己走上去好吧…?

Chrome Check

Chrome Check

Download ChromiumCheck

終於能用了…

一直很在意為甚麼 R4 Theme Creator Alice 不能用 mono 跑(改名為 Alice 前的版本都能用 XD),搞了好幾天,終於都可以了…

Alice w/ mono

Alice w/ mono

原因是幾個很懶的 code…不過能開不等於能用…某些地方仍然不能用,像 Save/Load Project,這次是 Class 設計的問題…囧rz