基於PHP的簡單採集資料入庫程式,php採集入庫
說到採集,無非就是遠程擷取資訊->提取所需內容->分類儲存->讀取->展示
也算是簡單"小偷程式"的加強版吧
下面是對應核心代碼(別拿去做壞事哦^_^)
所要採集的內容是某遊戲網站上的公告,如:
可先利用file_get_contents和簡單正則擷取基本頁面資訊
整理下基本資料,採集入庫:
<?php include_once("conn.php"); if($_GET['id']<=8&&$_GET['id']){ $id=$_GET['id']; $conn=file_get_contents("http://www.93moli.com/news_list_4_$id.html");//擷取頁面內容 $pattern="//iUs";//正則 preg_match_all($pattern, $conn, $arr);//匹配內容到arr數組 //print_r($arr);die; foreach ($arr[1] as $key => $value) {//二維數組[2]對應id和[1]剛好一樣,利用起key $url="http://www.93moli.com/".$arr[2][$key]; $sql="insert into list(title,url) value ('$value', '$url')"; mysql_query($sql); //echo "$value"."
"; } $id++; echo "正在採集URL資料列表$id...請稍後..."; echo ""; }else{ echo "採集資料結束。"; }?>
conn.php是資料庫連接檔案
list.php是本頁面
由於要採集的資料是分頁顯示的,且頁面地址是規律遞增,所以我用了js跳轉代碼,利用id傳值控制採集的頁數,也避免了for迴圈數目過大。
輕輕鬆鬆資料入庫,下篇文章寫關於具體url採集資訊的過程。
PHP採集入庫問題
mysql_connect() //先串連你的資料庫
mysql_select_db() //選擇你的資料庫
mysql_query("insert into 你的表 (地址,標題) values ('$tmp[1][$i]',$tmp[2][$i])");//OK了,搞定!
PHP採集入庫問題
php 裡有$nr = implode(‘#’,$arr) 方法 ,就可以 了
不過上面的組成的是“內容1#內容2”,沒有最後面的一個#,要是必須的話
就是$nr = implode('#',$arr).'#'
在笨的方法,就是用
foreach( $arr as $vl){
$nr.=$vl."#";
}
參考資料:$
http://www.bkjia.com/PHPjc/854356.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/854356.htmlTechArticle基於PHP的簡單採集資料入庫程式,php採集入庫 說到採集,無非就是遠程擷取資訊-提取所需內容-分類儲存-讀取-展示 也算是簡單"小偷程式...