ptt書摘網

October 27, 2009 2:49 pm

之前提到拿來做python練習的第一個網站已經上線一個月了,不過幾乎只有我在用。使用說明都寫在首頁,就不在這裡講太多,僅列出幾個特點:

  1. 免註冊,從ptt上轉寄信件到 ptt@tyker.info 即可
  2. 閱讀界面分個人專屬列表與全體閱讀列表
  3. 簡單排版,保留部份ANSI色碼,目的是讓手持裝置容易閱讀
  4. 提供轉寄功能將文章備份到自己信箱
  5. 有撲浪機器人,加入好友後每小時會收到隨機推文

會寫這東西是因為我很常看bbs,尤其後來都只停在ptt上。換工作之後大部分的port都被封鎖住,衍生出在家裡看文章的時候會順手轉幾封文章到信箱,然後可以透過webmail登入閱讀,有時候從公司電腦,有時候在路上以手機閱讀。(如果你也有相同需求,也來玩一玩啊拜託,不需要註冊很方便的~)

如此一來出現的第一個問題就是大量的ANSI碼效果不見,反而變成郵件裡的垃圾字元,所以想說如果有個簡單的呈現介面,可以重現部份ANSI效果或者過濾掉多餘的特效,以bbs幾乎是文字訊息的特性其實很適合在手機上瀏覽。

把網站架構規劃好之後我就開始一步一步進行實做,在技術上並沒有特別困難的地方,雖然是第一次使用Django這個framework,不過看完四篇tutorial之後做起來倒也挺順利的。花比較多時間的反而是ANSI碼的處理跟UAO字碼轉換。

在實作的過程我本來就不打算完整還原ANSI效果,因為這跟我的原始方向不符,如果呈現過多的色彩效果,在小螢幕的閱讀上反而會是一種負擔。所以我把目標定在不讓多餘的控制碼出現,以及顯示部份前景顏色,至少要讓推文看起來有原本的視覺效果。如果很需要完整ANSI效果的建議使用BBS Forwardr,我覺得他的ANSI效果做的非常完整。

UAO的處理又是另一個歷史共業,一直到現在PTT的文章編碼仍然是Big5,搭配Big5使用的Unicode補完計畫也被大量使用在含有日文的文章內。因為要轉成網頁顯示,沒有理由繼續使用big5,因此一開始就要把所有資料轉成UTF-8,但使用python的轉碼器碰到UAO裡的日文就破功了,big5hkscs算是可以轉出大部分的日文,但中文部份反而又會掉字。還好後來有找到wini做的codec,之後就沒看過日文文章有掉字了。

原本還列了一些todo,不過看起來不是那麼緊急,如果有人反應再來看看吧,現在先把心思放在製作無用的小網站來做各種練習,第一個已經做的差不多(書摘網至少我都有在用,所以不算無用小網站 XD),過幾天應該就會上線。至於第二個的題目為第一個的衍伸,應該可以讓我再玩上一段時間,目標是要熟練到”只要「四堂課、三小時」,「什麼網站基本上都能寫出來了」” 這樣的程度,這是理想,可不是要戳誰啊~

6 個回應 to “ptt書摘網”

Lu, Jye 的留言 於 October 28, 2009

我沒在看 PTT, 不過… 我會常看你書摘的~ XD

ykhuang 的留言 於 October 28, 2009

Jye, 每個人都只看別人的…這就是問題 :~

邪惡藍 的留言 於 November 6, 2009

原來這是你寫的 robot.
我有訂說 XD http://www.plurk.com/jaibi

ykhuang 的留言 於 November 7, 2009

你不知道是我寫的還敢亂加 XD

andycjw 的留言 於 July 19, 2010

請問big5ext的codecs要到哪裡去下載 我google了好久都找不到

admin 的留言 於 July 22, 2010

andycjw,

我也忘記是從哪裡挖出來的了,我可以寄給你但沒有原作者同意就散佈好像也不太好。我記得wini是Firefox的開發者,在moztw也有帳號,你要不要先試著聯絡他看看?

要留言乎?