PHP採集程式原理分析篇

2021-06-23 06:14:29 字數 870 閱讀 8810

由於需要,要寫乙個簡單的php採集程式,照例是到網上找了一堆教程,然後照貓畫虎,可是發現網上的教程全是似是而非,沒有乙個真正能用的。苦想了幾天,終於弄明白了裡面的道理。在這裡寫出來,請高手指正。

採集程式的思路很簡單,無非就是先打乙個頁面,一般都是列表頁,取得裡面全部鏈結的位址,然後開啟逐條鏈結,尋找我們感興趣的東西,如果找到,就把它入庫或別的處理。下面以乙個很簡單的例子來說說。

首先確定乙個採集頁,一般就是列表面了。這裡目標是:這是乙個列表頁,我們的目的就是採集這個列表頁上全部的文章。有列表頁了,第一步先開啟它,把它的內容納入到我們的程式中來。一般用fopen或是file_get_contents這兩個函式,我們這裡用fopen作例子。怎麼開啟它呢?很簡單:$source=fopen("[url=",]",'r'[/url]);實際上已經把內容納入到我們的程式中來了。注意得到的$source是乙個資源,不是可處理的文字,所以再用函式fread將內容讀到乙個變數中,這次就是真正的可編輯的文字了。

例子:

我們就可以寫正規表示式了。$count=preg_match_all("/(.+?)<\/a>/",$content,$art_list);

其中陣列$art_list[1][$s]裡面包含的就是某個文章的鏈結位址。而$art_list[2][$s]包含的就是某一文章的標題。到了這一步就可以算成功了一半了。

接著用for迴圈依次打每個鏈結,然後像取得標題一樣的方法取得內容即可。以上這些和我在網上找的教程都差不多,但是到了這個for迴圈網上的教程可就差勁,還沒找到一篇可以說清這個事的文章,剛開始我是用js來幫助迴圈的,還是用例項說吧,剛開始我是這樣做的:
for($i=0;$i<20;4i++ 
腦子有點難受,寫得有點亂,將就著看吧,在高手看來這可能沒什麼大不了的,可是對於我等菜鳥來說,實在是很有幫助。

PHP採集程式原理分析篇

由於需要,要寫乙個簡單的php採集程式,照例是到網上找了一堆教程,然後照貓畫虎,可是發現網上的教程全是似是而非,沒有乙個真正能用的。苦想了幾天,終於弄明白了裡面的道理。在這裡寫出來,請高手指正。採集程式的思路很簡單,無非就是先打乙個頁面,一般都是列表頁,取得裡面全部鏈結的位址,然後開啟逐條鏈結,尋找...

採集原理 採集技術篇

最近一段時間,採集很熱門,從新聞小偷,到 小偷,到新聞採集,flash採集,都有他的蹤影,現在還有很多的人對採集都很感興趣,為了服務大家,我也正在寫一套採集程式,名字為 心意採集程式 現在我講一下,採集用到的相關技術。下面講到的也不是很高深的xmlhttp技術,我也是稍稍講一下,乙個採集需要用到的幾...

採集程式原理,資訊採集技術的原理

採集程式的主要步驟如下 一 獲取被採集的頁面的內容 二 從獲取 中提取所有用的資料 一 獲取被採集的頁面的內容 我目前所掌握的asp常用獲取被採集的頁面的內容方法 1 用serverxmlhttp元件獲取資料 以下內容為程式 function getbody weburl 建立物件 請求檔案,以非同...