| 采集步驟: |
| 1、增加采集節(jié)點; |
| 2、預(yù)覽采集正則是否正確; |
| 3、開始采集; |
| 4、對采集的數(shù)據(jù)進行審核并入庫; |
| 5、生成欄目及內(nèi)容HTML頁面。 |
| 一、增加采集節(jié)點: |
| 1、登陸后臺->點擊大菜單“欄目管理”>“增加采集節(jié)點”; |
| 2、“選擇要增加采集的欄目”(選擇終極欄目); |
![]() |
| 3、“選擇要增加采集的欄目”后進入增加節(jié)點頁面; |
| 4、打開要采集的列表頁面:http://www.phome.net/tmp/cjpage/list.html |
點擊查看“源文件” 點擊查看,列表頁源代碼為如下: ![]() |
| 5、開始設(shè)置采集節(jié)點及列表頁正則: |
| (1)、輸入節(jié)點名稱:采集實例 |
![]() |
| (2)、采集頁面地址:http://www.phome.net/tmp/cjpage/list.html |
![]() |
| (3)、由列表頁的源代碼:“<a href="page1.html" target="_blank">”,我們得出“內(nèi)容頁地址前綴”為:http://www.phome.net/tmp/cjpage/ |
![]() |
| (4)、設(shè)置“信息頁鏈接正則”:由列表頁的源代碼得出。 |
圖1:頁面源代碼 圖2:得出的信息頁鏈接正則 ![]() |
| 6、點擊采集的內(nèi)容頁頁面并查看源文件:http://www.phome.net/tmp/cjpage/page4.html |
圖1:內(nèi)容頁頁面![]() 圖2:內(nèi)容頁源代碼 ![]() |
| 7、設(shè)置內(nèi)容頁內(nèi)容正則:(標題及內(nèi)容正則) |
| (1)、標題正則:由源代碼內(nèi)容我們得出“新聞標題”正則為: |
圖1:頁面源代碼 圖2:得出的標題正則 ![]() |
| (2)、內(nèi)容正則:由源代碼內(nèi)容我們得出“新聞內(nèi)容”正則為: |
圖1:頁面源代碼 圖2:得出的新聞內(nèi)容正則 ![]() |
| 8、點擊“提交”按鈕即可增加節(jié)點完畢,整個表單最終效果如下: |
| [點擊查看] |
| 二、預(yù)覽采集正則是否正確: |
| 1、上面增加采集節(jié)點后,我們返回“管理節(jié)點”頁面,如下: |
![]() |
| 2、點擊“預(yù)覽”采集,進入節(jié)點正則預(yù)覽與驗證: |
圖1:采集頁面地址列表 ![]() 圖2:信息鏈接列表 圖3:采集的內(nèi)容頁內(nèi)容 ![]() |
| 3、上面鏈接列表頁及內(nèi)容頁內(nèi)容預(yù)覽無誤后方可進行采集操作。 |
| 三、開始采集: |
| 1、上面的采集節(jié)點正則預(yù)覽無誤后,我們返回“管理節(jié)點”頁面: |
![]() |
| 2、點擊上面的“開始采集”鏈接,開始進行采集; |
| 3、采集信息完成后,系統(tǒng)會轉(zhuǎn)向采集入庫頁面,如下: |
![]() |
| 四、對采集的數(shù)據(jù)進行審核并入庫: |
即可完成入庫操作: 管理欄目信息也可以看到我們剛才入庫的信息: ![]() |
| 五、生成欄目及內(nèi)容HTML頁面: |
| 點擊“系統(tǒng)設(shè)置”大菜單>“數(shù)據(jù)更新中心”,進入數(shù)據(jù)更新中心頁面: |
| 1、生成首頁:點擊“刷新首頁”。 |
![]() |
| 2、生成欄目頁:“生成多欄目頁面”選擇“新聞系統(tǒng)”這個欄目,然后點擊“開始刷新”。 |
![]() |
| 3、生成內(nèi)容頁:“按條件生成信息內(nèi)容頁面”: |
![]() |
| 六、預(yù)覽前臺頁面 |
首頁: ![]() |
列表頁:![]() |
信息內(nèi)容頁:![]() |
| 至此本實例講解完畢。 |
| 常見問題 |
| 1、提示信息:Warning: preg_replace() [function.preg-replace]: Compilation failed: range out of order in character class at offset 83 in 答:你的采集正則變量名寫錯導(dǎo)致,請檢查你的正則變量。 |
個人經(jīng)驗:
1.采集的正則能寫得越簡單越好。
當然,復(fù)雜的話針對性強,比較不容易采到不要的內(nèi)容,但能在保證不采到不要的內(nèi)容的前提下,越簡單,一個正則對該網(wǎng)頁的通用性就越強。比如說一樣是采<a href="鏈接">這個鏈接,個人覺得,如果你已經(jīng)設(shè)定了鏈接區(qū)域,區(qū)域內(nèi)不會有別的鏈接的話,與其把鏈接正則寫成<a href="[!--newsurl--]">,還不如寫成href="[!--newsurl--]"。這樣,萬一有幾頁的鏈接對方寫成了<A href="鏈接">,也不會影響你的采集效果。
當然,對方不會莫名其妙地改變自己的模板,上面只是舉個例子。而我是懶人,懶人的目標就是用最少的正則采到最多的新聞。
正則寫得簡單,還是對自己采集水平的一個鍛煉。越簡單,找正則規(guī)律的要求就越高,多鍛煉自己,采集時才比較容易一次就采到自己想要的東西。
2.在正則內(nèi)盡管減少空格和回車的使用。
這樣說可能不是很明白。空格誰不用?注意:這里說的不是一個或兩個空格,而是大片相連的空格。
空格的存在當然是必要的,但寫采集正則時出現(xiàn)大片相連的空格甚至包含大量回車時只能說明兩個問題:一,要么是對方的網(wǎng)頁太難采集,讓你不得不使用大片相連空格及回車來區(qū)分采集區(qū)域,否則找不到別的辦法了;二,要么是你太懶,懶得仔細地找正則,看到什么就是什么,大片的復(fù)制下來再說,反正復(fù)制得越多越不容易和別的重復(fù)。
相信大多數(shù)人都是第二種。
但要注意,當你大量復(fù)制對方網(wǎng)頁代碼當成正則時,你也把自己推入了一種很可能采集失敗,或是某幾頁能成功,某幾頁以失敗告終的險境。
某幾頁成功、某幾頁失敗的原因,同第1條所述,對方有可能偶爾在頁面內(nèi)改變正則。這種情況雖然不大遇到,但要充分考慮到。
大多數(shù)復(fù)制大量代碼當正則的同志,是處于一種不成功便成仁的境地的。因為空格還算好,不會出太多問題;但回車的問題很嚴重。我采集時,發(fā)現(xiàn),往往有些網(wǎng)頁在正則內(nèi)使用了回車,就會采集失敗——完全不認采集區(qū)域。回車是個很好的辨識標志,但——具體原因還不明了——有時它會導(dǎo)致整個采集過程的失敗。www.copyie.com
3.分頁區(qū)域正則。
很多人能很好地設(shè)定整個頁面的正則,但往往失敗在分頁正則上(我到現(xiàn)在都不是每個分頁都能采得到)。這里提幾個技巧。
第一,盡量不要把分頁區(qū)域包含在新聞?wù)恼齽t內(nèi)。這一點……如果有人看菜鳥手冊的話……嚴正聲明,那里面是寫錯的,當時對采集不是很了解,所以寫錯了。如果把分頁區(qū)域包含在新聞?wù)恼齽t內(nèi),會導(dǎo)致采到的新聞有兩行第1頁、第2頁等的顯示——因為把對方的分頁也當正文采來了。
第二,要注意“上下頁導(dǎo)航”和“全部列出式”。現(xiàn)在大多數(shù)網(wǎng)頁是兩種模式同時存在的。所以在寫正則時,如果你是使用某一種模式,要注意過濾掉另一種模式的鏈接,不然會導(dǎo)致采到過多的分頁,一般是會出現(xiàn)兩個第2頁。
第三,當分頁采集屢屢失敗,又實在查不出錯在哪里時,請看一下第2、3、4……頁的新聞?wù)牡恼齽t,是否與你寫的新聞?wù)齽t一致。有的網(wǎng)頁,后面幾頁用到的代碼和第一頁會不一樣,往往會比第一頁少掉一些,這時,如果你用的新聞?wù)恼齽t正好用到了后面幾頁沒有的代碼,那你分頁正則即使寫得完全沒有問題,由于后幾頁的正文它采集不到,顯示出來的就是沒有采到分頁(T_T 某蓮曾在這個問題上給它耗掉整整一個晚上,血淚史啊……)
4.采集中盡量減少用*,或者,至少有選擇性地用*。
比如<a href="鏈接">OOXXOOXX</a>這個,不少人喜歡用<a href="[!--newsurl--]">*</a>來采集。但是試問,這個*有什么意義嗎?列位哪位有見過,有哪個<a>.....</a>之間是沒有東西的嗎?所以這個*放在這里,有放沒放是一個樣的。除非是這個鏈接正則太復(fù)雜了,一定要靠*之后的代碼繼續(xù)區(qū)分判斷,以過濾掉不要的,這時才需要用*。
用*有一個弊端——在你對正則看得不是很清楚,不太負責任地加*的時候,很可能不能完全采集到你想采集的內(nèi)容,或是一不小心把要采集的內(nèi)容去掉了。所以能不用*盡量不要用*。
新聞熱點
疑難解答