fig. 1 PeTT.cc,批踢踢網頁版閱讀站
fig. 2 PeTT mobile 手機網頁版
柯p的素人參政讓大家見識到網路鄉民世代的崛起,這議題讓家中老媽對"婉君"的很有興趣,想說建議老媽上ptt瀏覽文章認識一下現在年輕人都在討論什麼議題,但利用telnet連上ptt需要帳密且鍵盤操作對老男人來說很不方便,原本想說讓他上ptt最新的網頁版就好,但又覺得ptt目前的網頁版使用起來很彆扭,所以想說自己寫一個"修改版"的網頁版ptt讓老媽用用,pett.cc就是從上述的idea上發想。
網頁的撰寫邏輯其實很簡單也很粗暴,那就是直接將pett網頁版的內容擷取下來作修改!當初為了能夠做到不登入也能瀏覽ptt文章的目的,所以我放棄了用傳統的socket連線模式,將目光轉移到了可在網頁上免登入直接瀏覽文章的ptt網頁版,我想了兩個方法,第一個就是建立資料庫,定期備份ptt文章到資料庫中。第二個方法就是直接抓取網頁內容,修改後直接在網頁上顯示。
兩種方法個有利弊,當然如果要體驗完整的ptt,使用第一種方法是最好的,但缺點就是網路主機硬體要求比較高,需要另行建製資料庫,且最麻煩的就是這種方法會在網路上留底,如果ptt原po文者要求刪除文章,還要另外花心力去處理!所以到最後選擇了第二個方法,直接抓取網頁,並展示修改後的內容!這樣就可以同步ptt的任何文章操作,不會有上述的問題產生。
抓取網頁文章的部分是利用php+curl來執行網頁抓取網頁html程式碼的動作,然後在將html換為json格式來將內容格式化取出,最後在修改預設的css格式和增加額外的圖示就完成網站的基本架構。網頁是使用bootstrap框架來製作,而手機版的網頁是使用較適合手機螢幕的jquery mobile框架來撰寫。
再來就是最麻煩的搜尋部分,因為原本的ptt網頁版並不提供內建搜尋功能,還好網頁終究還是網頁,只要公開放上網路的東西幾乎逃不過google的快取備份,也因此ptt網頁版的文章在google都可以搜尋的到,缺點是google處理會慢個幾個小時,所以進2~3個小時的文章會搜尋不到,這是一個缺點。
之前在測試版的網頁有加入同主題文章串連,是利用暴力法,將文章網前後100頁一頁一頁找(當然找到特定目標會停止),但效率很差,所以放棄同主題文章搜尋,完全改用google搜尋取代。
當然網站(含手機版)部分還在測試階段,如果有任何bug或建議歡迎email給我,我會儘快修繕改進。
沒有留言 :
張貼留言