国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

css文件背景圖片下載器php版

2024-05-04 21:49:37
字體:
來源:轉載
供稿:網友

下載css文件里面背景是我們這些盜版份子長期搞的事情,下載個css圖片下載器各種廣告彈窗,扛不住,呵呵,寫了個水貨的php版本的,可以湊合著用下.

把文件放到php程序目錄 dos下面 php.exe cssImages.php 0 http://m.survivalescaperooms.com/wp-content/themes/itxti/style.css /images/

先在php程序目錄建個images文件夾,呵呵,貼代碼:

  1. <?php   
  2. /**  
  3. *@link  http://blog.csdn.net/jsbba  
  4. *@阿唐 2013-4-6 22:19   
  5. *@呵呵  
  6. */   
  7. set_time_limit(0);   
  8. error_reporting(E_ERROR);   
  9. if($argc<4){   
  10. print_r('   
  11.  +-------------------------------------------------+   
  12. Usage: php '.$argv[0].' css路徑類型(0為遠程、1為本地) css文件路徑 圖片保存目錄   
  13. Example:    
  14. php.exe '.$argv[0].' 0 http://www.xxx.com/index.css /images/   
  15.  +-------------------------------------------------+   
  16. ');   
  17. exit();   
  18. }   
  19. //遠程css   
  20. if($argv[1]==0){   
  21.     $host = getParse($argv[2],'host');   
  22.     $savePath = getSavePath($argv[3]);   
  23.     $images = getCssImagesArray($argv[2]);   
  24.     //print_r($images);   
  25.     $imagesurls = getImagesLinks($images,$argv[2]);   
  26.     imagesDowner($imagesurls);   
  27. }   
  28. //本地css開始   
  29. if($argv[1]==1){   
  30.     //懶得寫了,呵呵,這個沒多大意義   
  31. }   
  32. /*  
  33.  * css圖片分析函數  
  34.  * $csspath  css文件路徑  
  35.  */   
  36. function getCssImagesArray($csspath){   
  37.     $cssFile = file_get_contents($csspath);   
  38.     $images = array();   
  39.     preg_match_all("|url/((.+)/)|i",$cssFile,$images);   
  40.     $images = $images[1];   
  41.     return $images;   
  42. }   
  43. /*  
  44.  * css文件相對目錄處理函數  
  45.  * $path 路徑  
  46.  */   
  47. function getNocssPath($path){   
  48.     global $host;   
  49.     $tempLinkmages='';   
  50.     //相當路徑獲取   
  51.     $tempPath = explode('/',$path);   
  52.     for($i=1;$i<(count($tempPath)-2);$i++){   
  53.         $tempLinkmages .= $tempPath[$i].'/';   
  54.     }   
  55.     $xdImage = $host.$tempLinkmages;   
  56.     return $xdImage;   
  57.     //相當路徑獲取   
  58. }   
  59.    
  60. /*  
  61.  * 圖片連接獲取函數  
  62.  * $images array 所有需要獲取的images數組  
  63.  * cssLink css文件鏈接  
  64.  */   
  65. function getImagesLinks($imagesArray,$cssLink){   
  66. global $host;   
  67. $urlImages = array();   
  68.     foreach($imagesArray as $key=>$value){   
  69.         if(pathCheck($value)){   
  70.             if((!in_array(($host.$value),$urlImages))){   
  71.                 $urlImages[$key] = $host.$value;   
  72.             }   
  73.         }else{   
  74.             if((!in_array((getNocssPath(getParse($cssLink,'path')).$value),$urlImages))){   
  75.                 $urlImages[$key] = getNocssPath(getParse($cssLink,'path')).$value;   
  76.             }   
  77.         }   
  78.     }   
  79.     return $urlImages;   
  80. }   
  81.    
  82. /*  
  83.  * 圖片獲取  
  84.  * $urlImages需要下載的圖片數組  
  85.  */   
  86. function imagesDowner($urlImages){   
  87. //print_r($urlImages);   
  88.     foreach($urlImages as $key=>$value){   
  89.         $urlImagesOk[$key] = str_replace('//','/',$value);   
  90.         $urlImagesOk[$key] = str_replace('"','',$urlImagesOk[$key]);   
  91.         $urlImagesOk[$key] = str_replace("'",'',$urlImagesOk[$key]);   
  92.         $urlImagesOk[$key] = 'http://'.$urlImagesOk[$key];   
  93.         if(grabImage($urlImagesOk[$key],basename($urlImagesOk[$key]))){   
  94.             print_r(   
  95. basename($urlImagesOk[$key]).' 文件下載成功   
  96. ');   
  97.         }else{   
  98.             print_r(   
  99. basename($urlImagesOk[$key]).'  下載失敗   
  100. ');   
  101.         }   
  102.     }   
  103.     //print_r($urlImagesOk);   
  104. }   
  105. /*  
  106.  * 相對路徑絕對路徑判定函數  
  107.  * $imageUrl 圖片鏈接數組  
  108.  * true 為絕對路徑  
  109.  * false 為相當路徑  
  110.  */   
  111. function pathCheck($imageUrl){   
  112.     if(preg_match('|^(//)|',$imageUrl)){   
  113.         return true;   
  114.     }else{   
  115.         return false;   
  116.     }   
  117. }   
  118.    
  119. /*  
  120.  * 圖片下載函數  
  121.  * $url 圖片鏈接  
  122.  * $filename圖片名字  
  123.  */   
  124. function grabImage($url$filename){   
  125.     global $savePath;    
  126.     if($url == '') {   
  127.         return false; //如果 $url 為空則返回 false;   
  128.            
  129.     }   
  130.     $ext_name = strrchr($url'.'); //獲取圖片的擴展名   
  131.     if($ext_name != '.gif' && $ext_name != '.jpg' && $ext_name != '.bmp' && $ext_name != '.png') {   
  132.         return false; //格式不在允許的范圍   
  133.            
  134.     }   
  135.     if($filename == '') {   
  136.         return false; //名稱無效   
  137.            
  138.     }   
  139.     //開始捕獲   
  140.     ob_start();   
  141.     if(readfile($url)){   
  142.         $img_data = ob_get_contents();   
  143.         ob_end_clean();   
  144.         $size = strlen($img_data);   
  145.     }else{   
  146.     ob_end_clean();   
  147.     return false;   
  148.     }   
  149.     if(($local_file = fopen($savePath.$filename , 'a'))&&(fwrite($local_file$img_data)))   
  150.     {   
  151.         fclose($local_file);   
  152.         return true;   
  153.     }   
  154. }   
  155. /*  
  156.  * 保存目錄  
  157.  */   
  158. function getSavePath($savepath){   
  159.     $savePath = $savepath;   
  160.     $savePath = dirname(__FILE__).$savePath;   
  161.     return $savePath;   
  162.       //Vevb.com 
  163. }   
  164. /*  
  165.  * 解析url  
  166.  */   
  167. function getParse($host,$type){   
  168.     $baseurl = parse_url($host);   
  169.     return $baseurl[$type].'/';   
  170.    
  171. //echo $baseurl;   
  172. }   
  173. ?>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 上杭县| 祁阳县| 遂溪县| 精河县| 许昌县| 武定县| 英山县| 广平县| 十堰市| 夏邑县| 中方县| 比如县| 昌都县| 犍为县| 息烽县| 儋州市| 扶风县| 哈尔滨市| 白玉县| 恩平市| 泽普县| 姜堰市| 孙吴县| 西昌市| 英吉沙县| 宜黄县| 禄丰县| 景洪市| 屏山县| 定远县| 连城县| 西安市| 广州市| 陈巴尔虎旗| 新田县| 留坝县| 当涂县| 娄底市| 古田县| 苍山县| 常宁市|