php抓取一個頁面的圖片

思路:php

1.找到一個頁面瀏覽器

2.正則過濾全部的img學習

3.正則過濾出全部的src的屬性url

4.獲取連接信息,寫入文件 file_get_contents(), file_put_contents()spa

5.在cli模式下運行代碼(瀏覽器運行可能內存爆掉,或運行超時)code

代碼:blog

 1 <?php
 2     //過濾全部的img
 3     $url = "http://www.ivsky.com/";
 4     $str = file_get_contents($url);
 5     $preg = '/<img[^>]*\/>/';
 6     preg_match_all($preg, $str, $matches);
 7     $matches = $matches[0];
 8 
 9     //獲取src中的連接
10     $arr = [];
11     foreach($matches as $v){
12         $preg = '/http:\/\/.*.jpg/';
13         preg_match_all($preg, $v, $match);
14         $arr[] = $match[0][0];
15     }
16     //文件保存地址
17     $dir = 'E:/abs/img/';
18 
19     foreach($arr as $k => $v){
20         //圖片名稱
21         $name = $dir . $k . '.jpg';
22         //下載
23         download($name, $v);
24     }
25     function download($name, $url){
26         if(!is_dir(dirname($name))){
27             mkdir(dirname($name));
28         }
29         $str = file_get_contents($url);
30         file_put_contents($name, $str);
31         //輸出一些東西,要不窗口一直黑着,感受怪怪的
32         echo strlen($str);
33         echo "\n";
34     }

注:僅供學習,若是侵犯到某人權利請聯繫我我.圖片

相關文章
相關標籤/搜索