基於PHP的簡單採集資料入庫程式_php執行個體

來源:互聯網
上載者:User

說到採集,無非就是遠程擷取資訊->提取所需內容->分類儲存->讀取->展示

也算是簡單"小偷程式"的加強版吧

下面是對應核心代碼(別拿去做壞事哦^_^)

所要採集的內容是某遊戲網站上的公告,如下圖:

可先利用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="/<li><a title=\"(.*)\" target=\"_blank\" href=\"(.*)\">/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 "<a href='content.php?url=http://www.93moli.com/$url'>$value</a>"."<br/>";    }   $id++;   echo "正在採集URL資料列表$id...請稍後...";   echo "<script>window.location='list.php?id=$id'</script>"; }else{   echo "採集資料結束。"; }?>

conn.php是資料庫連接檔案

list.php是本頁面

由於要採集的資料是分頁顯示的,且頁面地址是規律遞增,所以我用了js跳轉代碼,利用id傳值控制採集的頁數,也避免了for迴圈數目過大。

輕輕鬆鬆資料入庫,下篇文章寫關於具體url採集資訊的過程。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.