:::

擷取AJAX動態產生的網頁內容:PhantomJS指令列工具 / Crawling AJAX Webpages with PhantomJS Command Line Utility

擷取AJAX動態產生的網頁內容:PhantomJS指令列工具 / Crawling AJAX Webpages with PhantomJS Command Line Utility

image

現在很多網頁內容都是以動態的方式產生,例如Facebook會在開啟網頁之後再來讀取網頁內容,就連「布丁布丁吃什麼?」也是在網頁開啟之後再來慢慢載入旁邊的小工具。這種使用AJAX技巧來調整畫面的網頁,雖然便於一般使用者用瀏覽器查看,但是卻會造成伺服器端用程式抓取網頁的困難。

還好,現在我們可以用Node.js寫成的虛擬瀏覽器PhantomJS來幫我們載入完整的網頁內容。為此我寫了一些搭配PhantomJS使用的命令列腳本,讓我們可以在Linux 32位元環境下以指令端擷取指定網址,並配合jQuery選取器抽取出需要的網頁元素,最後直接回傳顯示在螢幕上。

(more...)

使用Apache Tika指令列抽取文件的內文 / Using Apache Tika Extract File’s Content

使用Apache Tika指令列抽取文件的內文 / Using Apache Tika Extract File’s Content

image

如果要做檔案中的全文檢索服務,那就要先把檔案的內文抽取出來轉換成字串,這樣才能提供全文檢索引擎進行索引。Apache Tika是一個萬用型的檔案內文抽取工具,我們可以用指令列來操作Tika,就能從PDF、Microsoft Office、Open Document、純文字檔案等文件抽取內文。非常好用!

(more...)

簡易PHP中文斷字器 / A Simple Chinese Word Tokenizer in PHP

布丁布丁吃布丁

簡易PHP中文斷字器 / A Simple Chinese Word Tokenizer in PHP

image

這篇製作了一個簡單的斷字器,將「這份編號是tc_130的心靈錯位器真是太cool了」變成「這 份 編 號 是 tc _ 130 的 心 靈 錯 位 器 真 是 太 cool 了」。詳細來說,就是在不是英數字的文字前後加上空格,但是英數字則保持原樣。這樣子就能讓Apache Solr這樣的全文檢索引擎為內容索引時,就可以找到以中文一個字為單位的層級了。

 

(more...)

「布丁布丁吃什麼?」留言功能調整:上傳圖片 / Comment Form New Feature: Image Upload

布丁布丁吃布丁

「布丁布丁吃什麼?」留言功能調整:上傳圖片 / Comment Form New Feature: Image Upload

image

最近有讀者覺得留言框只能寫文字、不能上傳圖片,不太方便發問。所以我在留言框的下面加上了Imgur上傳圖片的連結,並以這篇教大家如何上傳圖片、取得圖片網址,這樣大家就更能夠方便發問了。

(more...)

集換式卡片遊戲「水瓶戰記」的結尾 / The End of Aquarian Age

布丁布丁吃布丁

集換式卡片遊戲「水瓶戰記」的結尾 / The End of Aquarian Age

image

最近這幾天忽然很想知道現在水瓶戰記(水瓶世紀)的運作狀況,所以就上網查查看,簡單閒聊一下。(圖片來自於水瓶戰記官網)

(more...)

開放原始碼數位典藏整合平台發展與建置 / Introduce to DSpace-DLLL: an Open Source Digital Archive System

布丁布丁吃布丁

開放原始碼數位典藏整合平台發展與建置 / Introduce to DSpace-DLLL: an Open Source Digital Archive System

image

這是我在2016年到兩個地方介紹DSpace-DLLL的投影片。一個是在政治大學圖書館舉辦的「數位典藏、數位策展暨數位人文學研習班」,內含實作的3小時課程,另一個是在國立師範大學舉辦的「台北市教師研習中心校史研習班」單純講課的課程。這兩個課程都可以搭配我另外製作的VirtualBox版本DSpace-DLLL虛擬機器來使用,以下提供連結讓有需要的人自由下載。

(more...)

想用無限空間沒那麼容易!Google Drive與伺服器整合失敗記錄 / Solution to Integrate Google Drive with Services: not reliable

想用無限空間沒那麼容易!Google Drive與伺服器整合失敗記錄 / Solution to Integrate Google Drive with Services: not reliable

image

最近花了一段時間在研究怎麽把Google Drive (Google雲端硬碟)ZoteroProxmox伺服器整合。整合之後可以運作,但是可能是因為檔案處理速度過慢或是Google Drive API配額的限制,最後都無法順利運作。這篇記錄一下到目前為止的研究進度。

(more...)