dede採集教程

QQ39921050發表於2014-11-25
原文地址:dede採集教程作者:鯊魚
以織夢官方站為例,我們採集站長學院下的PHP教程欄目,開啟列表地址http://www.dedecms.com/web-art/PHP_jiaocheng
    登入後臺,進入“採集節點管理”,新建一個節點,選擇內容模型為“普通文章”。
1.設定節點基本資訊
    先填寫一個方便記憶的節點名稱,選擇目標頁面編碼為GB2312,防盜鏈模式不做設定,因目標站沒做限制,這一項就不做修改,系統預設超時時間10秒。
2.設定列表網址獲取規則
    這一步我們要做些設定,獲取文章列表地址,回到目標站列表頁,觀察分頁間的變化,可以發現只有“14_”後的數字有規律的遞增變化。
首頁:http://www.dedecms.com/web-art/PHP_jiaocheng/list_14_1.html
中間:http://www.dedecms.com/web-art/PHP_jiaocheng/list_14_(*).html
末頁:http://www.dedecms.com/web-art/PHP_jiaocheng/list_14_172.html
    複製一個分頁地址,回到“新增採集節點”頁面,選擇“來源屬性”為“批量生成列表網址”,把貼上地址到“匹配網址”中,修改規律變化處為(*),“批量生成地址設定”處(*)輸入1到172,這裡的意思是生成出列表第一頁到最後172頁的所有地址。
    測試一下,在彈出框中我們可以看到迴圈出172條地址記錄,很順利的就設定好了。有時候會碰到較難獲取的列表,那我們可以把把沒規律的地址複製到”手工指定列表網址“文字框中來採集。
3.設定文章網址匹配規則
    上面指定好了文章地址來源頁,這一步就需要在這些頁面中找出符合要求的文章地址頁了。開啟一個列表頁面觀察,左欄的方框中包含了我們需要的全部地址,這種情況區分明顯的頁面,可以利“區域開始的HTML”和“區域結束的HTMLL”設定進行過濾。
    不過也可以使用其他方法。把滑鼠移到各處連結地址,觀察瀏覽器左下角顯示的完整地址,我們需要的地址都包含“PHP_jiaocheng/20”,那我們把它填寫到“必須包含”中。
兩種方法都能夠過濾出地址,碰上覆雜頁面,可以配合起來使用,加上正則,幾乎沒有篩選不出的地址,附(圖5.1)對照。最後確定,進入下一步“網頁內容獲取規則”。


[轉載]dede採集教程


(圖5.1)


4. 網頁內容獲取規則
    上面介紹了列表設定的方法,接下來我們進入內容獲取規則的設定,如果說採集是上菜的話,上面一到三步的作用,只是開胃菜為下面的主菜做引。接下來是介紹如何從目標站把文章內容採集過來,這一步是是整個採集中最為核心的部分。
    繼續回到織夢的PHP教程列表,隨便開啟一篇列表中的文章,這裡我們以《正規表示式》這篇文章為例:http://www.dedecms.com/web-art/PHP_jiaocheng/20070420/38633.html ,把該地址複製到“預覽網址”;因為織夢所有文章都沒分頁,所以這裡的分頁就無需設定,直接進入“固定的採集專案”頁面
(注:如果採集的內容含有分頁,只需要將分頁導航部分的匹配規則設定完成即可,這裡有全部列出的分頁列表、上下頁形式或不完整的分頁列表根據內容進行設定即可)

以下為引用的內容:
全部列出的分頁列表:分頁內容列出所有的連結,如下圖所示
221×27
上下頁形式或不完整的分頁列表:單頁顯示當前分頁內容,不完全顯示的列表形式
279×28 


5. 固定的採集專案
    進入這一步,就開始對頁面原始碼進行分析了,採集無非是分析HTML頁面的結構,從而獲取我們所需的內容。所以要求我們對HTML程式碼有一定的認識,能通過檢視頁面原始檔,找出需要的內容,最好多開幾個頁面進行分析,找出相同處。
    推薦大家使用Dreamweaver分析。在分析頁面程式碼的時候,多使用搜尋功能,會方便很多,特別是找到標籤後,搜尋一下看有無重複以減少分析錯誤。
1) 文章標題:這個頁面的標題是“正規表示式”複製下它,在Dreamweaver按Ctrl+F鍵搜尋全部,有30項記錄。因為唯一性,這裡我們選擇105行這段“<h1>正規表示式</h1>”標籤,複製到“固定採集專案”文章標題的匹配規則中,並用關鍵字“[內容]”替換標題,最終為<h1> [內容] </h1>。
2) 作者:以作者為關鍵字繼續搜尋,只有110行有唯一的出現,連同alluse前後的標籤一起復制到匹配規則中,使用[內容]替換要採集處。
3) 來源:同上操作在109行找到標籤,複製過去,使用[內容]替換要採集處。若來源包含超連結標籤想去掉,則在過濾規則框,填寫如下規則過濾掉:
<a([^>]*)>
</a>
4) 釋出時間:同上操作在111行處進行復制貼上和修改。
5) 文章內容:搜尋文章內容的開始部分,例如“第一部分”在118行發現目標,點選狀態列<p>發現未能全部選中文章內容,繼續前一個<div. content>,藍色內容選中全部內容,知道<div class="content"></div>為文章內容的真正容器。複製內容前後標籤,到匹配規則中。
至此,內容的過濾都設定都完成了,接下來就是預覽效果了,附完成圖5.2

 


[轉載]dede採集教程


(圖5.2)


6. 節點採集
    如果你的採集節點是一氣呵成而且測試成功的話,按提示點選按鈕,就可以直接採集了,但是節點是之前寫的,就需到“節點管理頁”勾選需採集節點,按“採集”按鈕進行採集了。若你想採集所有節點的新內容,那就到監控採集頁面進行操作吧。

    每頁採集可以設定每頁採集的資料條數,一般來說不要設定太大,否則有可能導致系統處理不過來而部分採集不到,建議別超過15。
    執行緒數是指每次有多少個執行緒同時進行採集,執行緒數的增加可以加快採集速度,但相應的會增加伺服器資源的佔用,所以請慎用。假若目標站點有防重新整理限制,此處就可以根據目標站點的防重新整理限制時間進行設定,假如沒有就預設0秒可以了。
    附加選項這三個設定從字面上應該可以很容易理解,這就根據你的實際需要進行選擇了。
7. 採集後的處理
    採集完成後,點選“檢視種子網址”進入檢視採集的結果。這裡羅列出了採集回來的內容。可以點選進去檢視採集到的內容有無問題的。
    在這個列表中有些資料,可能顯示的是“未下載”,引起的原因可能是設定的採集條數過大導致的。出現這樣的情況僅需要在上面採集的“附加選項中”選擇“僅下載未下載內容”,然後再進行一次採集即可。假如要刪除部分不滿意的資料,可以在列表中在你要刪除的資料前面打勾,然後按“刪除所選網址”即可,這裡支援批量操作。
8. 將採集的資料入庫
    這裡有多個入口:
1) 在節點管理頁中選擇剛才採集的那個節點,然後點選下面的“匯出資料”按鈕進入入庫操作。
2) 直接點選剛才採集的節點進入“臨時內容管理”頁面,點選右上方的“匯出內容”按鈕即可進入入庫操作。
3) 選擇節點後點選“採集”按鈕進入採集頁面,在右上方有“匯出資料”按鈕,點選後也可進入入庫操作頁面
(注:匯出資料請勾選“排除重複標題”選項來避免重複匯入內容,如果重複匯入內容可以使用後臺的批量處理中檢測重複標題的功能進行修復)
    首先選擇要匯入到的欄目,按“請選擇”那裡即可在彈出的視窗中選擇你需要匯入的欄目釋出選項這裡一般預設即可,除非你不想馬上釋出。每批匯入預設是30條,這裡修改與否都無所謂,附帶選項一般選“排除重複標題”,至於自動生成HTML那個選項建議先別生成,因為我們還要去批量提取摘要和關鍵字。

相關文章