在爬蟲領域的網頁分析的過程中,爬蟲程序的復雜度很大程度上受目標網站的專業化程度影響。
其影響主要表現在兩方面:
(1)對流程確定過程的影響
在通過分析網站地圖的方式去確定流程,對專業化程度不是那么高的網站而言,其網站分類、列表方式基本基本都采用鏈接的方式,這樣在流程實現是很容易就可獲取需要的鏈接;而對專業化程度較高的網站而言,在分類下往往通過搜索、javascript(包括AJAX)翻頁的方式來陳列同類記錄,這在流程實現的時候,就需要程序員去分析一些javascript函數所做的操作,去猜度相關列表方式的URL(如搜索的表單如何提交、翻頁函數如何處理翻頁等)。
(2)對獲取詳細信息過程的影響
在獲取詳細信息的時候,基本都是通過分心詳細信息頁面的結構出發的。
對專業化程度高的網站而言,詳細信息頁面的的制作也是投入了一些精力的,通常都規定和頁面特定的位置顯示特定的信息,這樣就便于在分析過程中獲取指定的數據。
而對專業化程度稍低的網站而言,詳細頁面的內容很多都是用HTML編輯器直接編輯出來的內容,在同一頻道的不同分類的詳細信息頁面中存在著很大的差異,這使得獲取詳細信息部分的分析程序復雜度倍增。
個人的美好愿望:寧愿分析的是專業化程度高一點的站點,因為流程的確定及具體實現總是可以想到辦法解決的;詳細信息的分析存在太多頁面結構的話,將在獲取詳細信息付出太大代價!
Let life be beautiful like summer flowers and death like autumn leaves.