Sun Java System Portal Server 7.2 管理指南

資源篩選程序

網頁抓取程式會使用篩選器決定要處理何種資源,以及如何處理。當網頁抓取程式探索資源參照及資源本身時,網頁抓取程式會將篩選器套用在每個資源上。篩選器會列舉資源,並決定是否產生要存放在搜尋伺服器資料庫中的資源描述。

網頁抓取程式會檢查一個或多個起點 URL,套用篩選器,再套用篩選器至透過列舉 URL 所產生的 URL 上,等等。起點 URL 是在 filterrules.conf 檔案中定義。

每個列舉篩選器和產生篩選器會執行任何必要的初始化作業,並將比較測試套用至目前資源。每個測試的目標為允許或拒絕資源。篩選器也擁有關閉階段,在此階段將執行清除作業。

如果資源取得許可,則該資源通過篩選器繼續其歷程。網頁抓取程式最終會列舉該資源,以嘗試進一步探索其他資源。產生器也可能會為其建立資源描述。

若拒絕某個資源,則不會繼續處理該資源。對於被拒絕的資源,篩選器不會採取更進一步的動作。

這些作業不一定會被連結。有些資源會造成列舉,其他則造成 RD 產生。許多資源會同時造成列舉和 RD 產生。例如,如果資源是 FTP 目錄,則資源通常不會有為它產生的 RD。然而,網頁抓取程式會在 FTP 目錄中列舉個別的檔案。若 HTML 文件包含至其他文件的連結,該文件會造成產生 RD,也會導致任何已連結文件的列舉。

下列章節會說明篩選器程序:

篩選器程序的階段

列舉篩選器與產生篩選器的篩選程序中都擁有五個階段。

表 19–1 常用中介資料類型

中介資料類型 

說明 

範例 

完整的 URL 

資源的位置 

http://home.siroe.com/

通訊協定 

URL 的存取部分 

httpftpfile

主機 

URL 的位址部分 

www.siroe.com

IP 位址 

主機的數字版本 

198.95.249.6 

路徑 

URL 的路徑部分 

/index.html

深度 

從起點 URL 開始的連結數 

篩選器語法

filter.conf 檔案包含列舉篩選器與產生篩選器的定義。這個檔案可以包含多個用於列舉與產生的篩選器。網頁抓取程式所使用的篩選器是由 robot.conf 檔案中的 enumeration-filtergeneration-filter 特性指定。

篩選器定義擁有一個定義良好的結構:標題、內文與結尾。標題會識別篩選器的開始並公佈其名稱,例如:


<Filter name="myFilter">

內文包含一系列的篩選器指令,這些指令可定義篩選器在設定、測試、列舉或產生和關閉期間的行為。每條指令會指定一個功能,且若適用,還會為功能指定特性。

結尾標記符為 </Filter>

範例 19–1 顯示名為 enumeration1 的篩選器。


範例 19–1 列舉檔案語法


<Filter name="enumeration1>
   Setup fn=filterrules-setup config=./config/filterrules.conf
#  處理規則
   MetaData fn=filterrules-process
#  再次按類型和處理規則篩選
   Data fn=assign-source dst=type src=content-type
   Data fn=filterrules-process
#  僅在 HTML 上列舉
   Enumerate enable=true fn=enumerate-urls max=1024 type=text/html
#  清除
   Shutdown fn=filterrules-shutdown
</Filter>

篩選器指令

篩選器指令使用網頁抓取程式應用程式功能 (Robot Application Function, RAF) 執行作業。它們的使用方式和執行流程與 Sun Java System Web Server 的 obj.conf 檔案中 NSAP 指令和伺服器應用程式功能 (Server Application Function, SAF) 類似。類似 NSAPI 與 SAF,資料的儲存與傳送使用特性區段 (亦稱為 pblocks)。

六個網頁抓取程式指令,或 RAF 類別,與資源篩選程序中列出的篩選階段與作業對應:

每個指令擁有自己的網頁抓取程式應用程式功能。例如,將篩選功能與「中介資料」和「資料」指令一起使用,將列舉功能與「列舉」指令一起使用,將產生功能與「產生」指令一起使用,等等。

內建的網頁抓取程式應用程式功能和撰寫自訂網頁抓取程式應用程式功能的指示皆會在「Sun Java System Portal Server 7.1 Developer's Guide」中有所解釋。

撰寫或修改篩選器

在大部分的情況下,您可以使用管理主控台建立大部分基於網站定義的篩選器。隨後您可以修改 filter.confilterrules.conff 檔案以做出進一步想要的變更。這些檔案位在目錄 /var/opt/SUNWportal/searchservers/searchserverid/config 中。

要建立一組更複雜的特性,請編輯網頁抓取程式使用的配置檔案。

當您撰寫或修改篩選器時,請注意

您也可以執行以下動作:

如需詳細資訊,請參閱「Sun Java System Portal Server 7.1 Developer's Guide