PHP 採集心得技巧

來源:互聯網
上載者:User

1.擷取遠程檔案原始碼(file_get_contents或用fopen).
2.分析代碼得到自己想要的內容(這裡用正規匹配,一般是得到分頁)。
3.跟根得到的內容進行下載入庫等操作。

  在這裡第二步有可能要重複的操作好幾次,比如說要先分析一下分頁地址,在分析一下內頁的內容才能取得我們想要的東西。
  代碼:
  記的以前發部過部分的代碼今天我在這裡在簡單的發部一下
  複製PHP內容到剪貼簿
  PHP代碼:
@$nl=file_get_contents($rs['url']);//抓取遠程內容
preg_match_all("/var url = "gameswf/(.*?).swf";/is",$nl,$connect);//進行正規匹配取得自己要的內容
mysql_query("insert ......插入資料庫部分");
  上面的代碼就是所有採集要用到的代碼了,當然大家也可以用fope來作,我個人喜歡用file_get_contents。
  下面在共用一下我的下載圖片flash到本地的辦法,太簡單了兩行代碼
  PHP代碼: 複製代碼 代碼如下:if(@copy($url,$newurl)){
echo 'ok';
}

  在論壇上以前還發過一個圖片下載函數這會也放上來給大家
  PHP代碼: 複製代碼 代碼如下:/*本存圖片函數*/
function getimg($url,$filename){
    /*判斷圖片的url是否為空白,如果為空白停止函數*/
    if($url==""){
        return false;
    }
    /*取得圖片的副檔名,存入變數$ext中*/
    $ext=strrchr($url,".");
    /*判斷是否是合法的圖片檔案*/
  if($ext!=".gif" && $ext!=".jpg"){
        return false;
    }
    /*讀取圖片*/
    $img=file_get_contents($url);
    /*開啟指定的檔案*/
    $fp=@fopen($filename.$ext,"a");
    /*寫入圖片到指點的檔案*/
    fwrite($fp,$img);
    /*關閉檔案*/
    fclose($fp);
    /*返回圖片的新檔案名稱*/
    return $filename.$ext;
}

  共用一下個人的採集心德:
  1.不採那些作防盜鏈了的站,其實可以作假來路但是這樣的站採集成本太高
  2.採集盡量快的站,最好在本地進行採集
  3.採集時有很多時候可以先把一部分資料存入資料庫,等以後進行下一步的處理。
  4.採集的時候一定要作好出錯處理,我一般都是如果採集三次沒有成功就跳過。以前經常就因為一條內容不能采就卡在那裡一直的采。
  5.入庫前一定要作好判斷,檢查內容的合法,過濾不必要的字串。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.