加入收藏 | 设为首页 | 会员中心 | 我要投稿 草根网 (https://www.0555zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

php 采集图片并保存,php自动采集图片 远程图片 保存到本地

发布时间:2022-11-09 12:36:44 所属栏目:教程 来源:
导读:  [php]代码库//自动采集内容中带有图片地址的远程图片 并保存到本地

  function my_file_get_contents($url, $timeout=30) {

  if ( function_exists('curl_init') )

  {

  $ch
  [php]代码库//自动采集内容中带有图片地址的远程图片 并保存到本地
 
  function my_file_get_contents($url, $timeout=30) {
 
  if ( function_exists('curl_init') )
 
  {
 
  $ch = curl_init();
 
  curl_setopt ($ch, curlopt_url,$url);
 
  curl_setopt ($chphp采集类, curlopt_returntransfer, 1);
 
  curl_setopt ($ch, curlopt_connecttimeout, $timeout);
 
  $file_contents = curl_exec($ch);
 
  curl_close($ch);
 
  }
 
  else if ( ini_get('allow_url_fopen') == 1 || strtolower(ini_get('allow_url_fopen')) == 'on' )
 
  {
 
  $file_contents = @file_get_contents($url);
 
  }
 
  else
 
  {
 
  $file_contents = '';
 
  }
 
  return $file_contents;
 
  }
 
  function get_remote($body,$title){
 
  $img_array = array();
 
  $img_path = realpath("../../../upfile/news/").'/'.date("y/m/d/"); //采集远程图片保存地址
 
  //die($img_path);
 
  $img_rpath='/upfile/news/'.date("y/m/d/"); //设置访问地址
 
  $body = stripslashes(strtolower($body));
 
  preg_match_all("/(src|src)=["|'| ]{0,}((.*).(gif|jpg|jpeg|png))/isu",$body,$img_array);
 
  $img_array = array_unique($img_array[2]);
 
  foreach ($img_array as $key => $value) {
 
  $get_file = my_file_get_contents($value,60);
 
  $filetime = time();
 
  $filename = date("ymdhis",$filetime).rand(1,999).'.'.substr($value,-3,3);
 
  if(empty($get_file)){
 
  @sleep(10);
 
  $get_file = my_file_get_contents($value,30);
 
  if(empty($get_file)){
 
  $body = preg_replace("/".addcslashes($value,"/")."/isu", '/notfound.jpg', $body);
 
  continue;
 
  }
 
  }
 
  if(!empty($get_file) ){
 
  if( mkdirs($img_path) )
 
  {
 
  $fp = fopen($img_path.$filename,"w");
 
  if(fwrite($fp,$get_file)){
 
  $body = preg_replace("/".addcslashes($value,"/")."/isu", $img_rpath.$filename, $body);
 
  }
 
  fclose($fp);
 
  @sleep(6);
 
  }
 
  }
 
  }
 
  $body =str_replace("
 
  return $body;
 
  }
 
  function mkdirs($dir)
 
  {
 
  if(!is_dir($dir)){
 
  if(!mkdirs(dirname($dir))){
 
  return false;}
 
  if(!mkdir($dir,0777)){
 
  return false;}
 
  }
 
  return true;
 
  }
 
  $str ='fasfsdafsa
 
  ';
 
  echo get_remote($str,'图片');
 

(编辑:草根网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!