本文作為開發過程中的點滴記錄...
- Google Data API 的版號設定很奇怪:在檔案名稱部份只編到 1.0/2.0/3.0 ,但實際上的版本設定已經到了 1.38 了。這種怪異的版本設定方式導致 Maven 很難對 GData API 的 jar 檔進行版號管理,除非在建立檔案庫時將版本號改成 xxxx-1.0-1.38.jar 這類格式。
- 原本的 SnipSnap 及 WordPress 這兩個 Blogger 系統都會在 RSS 檔中加入一個 <content:encoded /> 元素,但是 Blogger 只有 <description /> 元素。檢視的結果發現部份 BSP 會使用 <description /> 元素放置文章摘要,而 <content:encoded /> 則放置完整內文。
- 順手查了一下各 BSP 的 RSS 檔,Pixnet、Yam 有提供 <content:encoded /> 元素,Wretch 則沒有。另外補充一點是 Wretch 還特地封鎖掉諸如 wget 這類工具讀取 RSS 檔的資格,有點莫名其妙。
- 在設定文章的發表時間時是使用 Entry.setPublished() 這個 method,不過當用來匯入 Blogger 的 RSS 檔時會出現這麼個訊息,但問題是所傳入的日期資訊好歹也是用 GData API 內的工具去 parse 的,結果自己吐出來的東西又不吃?只能說 GData API 真偏食...
Entry.published must have a timezone.
- 後來,我自行填入 TimeZone Offset 值為 0 終於通過前述考驗,不過當文章發佈出來後卻發現,時間一整個莫名其妙的不對... 發佈時間從本來的 +00:00 變成 -07:00 了... 莫名其妙嘛...
- 我已針對漏失 TimeZone 資訊的部份發起了一份 issue ,希望能快點確定是否為 bug !
特殊控制:因為懶的另外處理設定檔,所以某些設定可以掛在 RSS 檔內
- 草稿模式:預設匯入文章時會統一指定成草稿模式,不過如果患心有室肥大症,心臟比較大顆的人,可以在 RSS 檔中加入以下設定。如果是放在 channel 區段中屬於全域設定,放在 item 區段中則限該 item 有效。
<draft>false</draft>
- 替換作業:原本是規劃將不需要、不正確的圖形刪除,但後續為方便處理表情符號所需,改成可執行替換方式辦理。共有三種設定型態:
- <pattern>
<regex><![CDATA[source string]]></regex>
<replacement><![CDATA[replacement string]]></replacement>
</pattern> - <pattern>
<regex><![CDATA[source string]]></regex>
</pattern> - <pattern><![CDATA[source string]]></pattern>
- <pattern>
- 待處理連結:主要是因應連結不正確的情形,此時一律會設定成草稿模式以利後續處理。
<forceDraft><pattern><![CDATA[<img src="http://blog.adahsu.net/ada/[^>]*>]]></pattern></forceDraft>
逆境:基本上 RSS2Blogger 相關功能似乎已備妥,問題是偉大的 Google Data API 有每天 50 筆的限制。而且這個 50 筆限制的解除得等 24 小時候才能解除,等於每 50 篇約需花上 24.5 小時。這表示要把 13xx 筆一般文章搬到 Blogger 就要花上 54 天以上的時間...
有沒有 Blogger 討厭人家把 Blog 搬進 blogspot.com 的八卦啊?
沒有留言:
張貼留言