來說說現在幾個 Blog 服務的 RSS 吧

之前在一個網站上面看到了 FetchRSS 這個外掛,
覺得滿好玩的,於是就抓下來安裝了。

安裝與使用的過程,堪稱容易,
除了 Fetch 的時間有點長之外,
閱讀與顯示的功能不算是太差。

在作者網站上面看,感覺沒什麼大問題,
Comments 的讀入也十分正常,
但放到我的 Blog,去 fetch 現在台灣流行的幾個 Blog 服務後,
只能三聲無奈,傻笑改程式啊.. Orz

比較常見的,是換行符號 \n 與 <br> 之間的轉換問題,
有的 Blog 只輸出 \n,有的是去掉 \n,改成 <br>,
而有的是將 \n 轉成 <br>\n..

因此就要寫一堆取代式去把資料重新格式化,嘖嘖。

再來是資料格式問題,
原始程式只能吃 RSS Feed,而有些 Blog 只提供 ATOM,
本來以為會是個大問題,但原始程式其實可以正確的 parse 資料,
只要加入幾行判斷句,便可修正問題。

上面的問題都不算太大,因為標準本來就不明確,
影響到的也只有閱讀上的感覺,修正上也不算麻煩,
但之後隨著加入的 RSS 越多,奇怪的問題也就慢慢出現了,
下面僅寫出比較大的問題。

– 絕對位址與相對位址連結
我不大清楚標準定義為何,但在「會從別的地方連過去」前提下,
應使用絕對位址連結,但某些 Blog (其實我遇到的只有 X 名小站),
在處理連結上十分糟糕,整個就是不知道該怎麼處理,
最後索性把非絕對位址的連結全部 strip 掉,簡單省事。

– 圖片連結錯誤
新 X Blog 的 RSS 雖然沒有相對與絕對位址的問題,
但判斷句似乎沒寫得很好,River 桑的 RSS 就出現了錯誤的圖片位址,
解決法就是加一句取代式去取代掉,還好只有 domain 部分,
不然整個 URL 要修就很痛苦了 @@

– 圖片防盜連
像是 無 X 小站、X 浪 Blog,圖片是防盜連的,
既然都這樣做了,RSS 裡面還把 img tag 放進去做什麼呢?

擺明了就是要讀 RSS 的人看不到圖啊! (摔筆)

要嘛就把 img tag 全部 strip 掉,
要嘛就提供變通的閱讀方式嘛,
老師有在說你都沒在聽,弄得讀者心神不寧的,
這樣一點都不好玩.. 囧

我最後用了傳說中禁斷的方式,才挖了幾張圖出來,
有些還是沒辦法正常顯示,只好作罷。

現在讀圖的 script 還不是很完整,而最後還有可能被鎖,
真是小家子氣的 RSS 呢。

我認為,要鎖的應該是會盜連的網域,
而不是弄成只有自家才連得到,不然弄個 RSS 出來,
裡面只有一堆破圖,會嚴重影響閱讀的心情啊啊啊..

– Comments 跟 Feed 分開
這個我不想解決,反正我也很少看 comments (抖)

– 時間格式不標準
嗯,這個問題只出在 新 X 的 Blog,
在時間部分,少了標準該有的 “:” 分隔記號,
因此經過 PHP strtotime() 處理之後,
就變成了上個世紀的時間.. Orz

可能是我不大會寫吧,最後還是用取代式去修正這個問題,
regex 不熟也被我寫到熟了 (抖)

有些 Blog 很喜歡用 “繼續閱讀” 這個東西來吸引大家點閱,
雖然這不是什麼大問題,但總覺得這樣有些彆扭,
或許是想要提升網站排名吧? (以上純屬猜測)

能夠看到部分內容摘要,還算是有良心的了,
有的 RSS 內容只有一行連結,用起來跟 Bookmarks 差不多,
也不知道到底要不要放上頁面,十分黯然 (嘆)

為了修正一些錯誤的程式產生的錯誤結果,
就得要花上更多時間去想解決方式,並耗用 CPU 資源修正,
一個小小的 plugin,最後變成了有一大堆判斷式跟取代式的怪東西,
code 一點都不 poetry 了,噗 XD

真希望他們可以快點修正那些怪問題,
才能造福網路上眾多的閱讀者,與可憐的程式開發者啊.. (遠目)