- 因應必須先登入 PCDVD 後才能瀏覽討論區,配合進行相關設定。
- 所謂相關設定係指透過載入 Firefox 已存在之 cookies.txt 檔以便告知 Server 端這是個有效用戶請勿拒絕瀏覽,此亦表示必須自行修改內容以指定正確的 cookies.txt 檔案位址。修改內容請參閱程式內說明。
- 或透過 FeedBurner 取得由本系統產生的 feed (側邊欄上有訂閱記錄),目前只針對七嘴八舌異言堂討論區透別提供。
目的
- 練習使用 perl
- 原先寫的 shell script 版擷取程式在資源耗用上相對較高(不正式測試結果:Script vs Perl = 59s : 15s)
前置準備
- 安裝 Perl 執行環境:
- Windows 使用者請安裝 ActiveState 的 ActivePerl
- Linux 使用者應該都已預設安裝
- 安裝支援模組
- LWP (libwww-perl):
- Windows 使用者:ActivePerl 預設已安裝
- Linux 使用者:請透過套件管理系統安裝 libwww-perl 套件
- XML-RSS:
- Windows 使用者:請操作以下指令即可:
C:\> ppm install XML-RSS
- Linux 使用者:請透過套件管理系統進行安裝,套件名稱多為 XML-RSS
- File-Spec:
- Windows 使用者:請操作以下指令即可:
C:\> ppm install File-Spec
- Linux 使用者:請透過套件管理系統進行安裝,套件名稱多為 File-Spec
命令稿之使用:
- 請下載 pcdvd-rss.pl 命令稿並儲放於自訂目錄下,如: C:\RSS
- pcdvd-rss.pl 接受 4 個參數,依序為:
- 討論區編號:請參考附圖方式取得。
- 討論項數:一次要讀取多少筆討論串,請依資料變動情形適當設定之。另外則是此數字不包含置頂文件。
- 輸出目錄:要將輸出的 RSS 檔置於何處,請依平台格式予於指定之。
- 輸出檔名(optional):非必要參數,其作用在於指定 RSS 的輸出檔名。若未指定時,則輸出檔名將指定為 pcdvd-討論區編號.xml 。
擷取範例
- 擷取七嘴八舌討論區之使用範例,此範例將在 C:\RSS 目錄下建立一個 pcdvd-12.xml 的 RSS Feed 檔:
C:\> perl C:\RSS\pcdvd-rss.pl 12 30 C:\RSS
- 擷取電影討論區之使用範例,此範例將在 C:\RSS 目錄下建立一個叫 pcdvd-movie.xml 的 RSS Feed 檔:
C:\> perl C:\RSS\pcdvd-rss.pl 7 30 C:\RSS pcdvd-movie.xml
結語
- 完成測試後即可將之排入定時執行的行程自動產生。
- 擷取的時間間隔不要設定的太密集。
- 產生的 RSS Feed 即可餵入 RSS Aggregate 中讀取顯示。
- 目前提供的 PCDVD 七嘴八舌討論區 RSS Feeds 已改用此 perl script 產生,若有其他討論區需求者可自行建立。
沒有留言:
張貼留言