WebStorm multithreading tags Browserify Amaze UI UIkit vue循环数组 vue安装教程 android项目实例 虚拟机重启命令 windows杀进程命令 oracle查看所有数据库 linuxmysql启动命令 python数据格式 数据库教程 java实现 java正则表达式匹配 java开发入门 java字符串相等 字幕制作软件哪个好 dnf刷什么图赚钱 系统工具箱 tar解压 司司网吧 梦幻手游助手 medcalc 字符串分割成数组 ps反向选择的快捷键 cdr怎么画波浪线 计算机科学概论 一键清除锁屏密码 华为杂志锁屏怎么设置 任务管理软件 混凝土配合比计算软件 python爬取图片 mxf是什么格式 linux解压缩命令 ps文字旋转任意角度 拼多多推广软件 电脑微信官方下载
当前位置: 首页 > 学习教程  > 编程学习

php 网页抓取img

2021/1/9 1:58:40 文章标签: php抓取网页内容

<?php /*完成网页内容捕获功能*/ function get_img_url($site_name){ $site_fd fopen($site_name, "r"); $site_content ""; while (!feof($site_fd)) { $site_content . fread($site_fd, 1024); }/*利用正则表达式得到图片链接*/$reg_tag /<im…

<?php 
/*完成网页内容捕获功能*/
function get_img_url($site_name){ 
 $site_fd = fopen($site_name, "r"); 
 $site_content = ""; 
 while (!feof($site_fd)) { 
  $site_content .= fread($site_fd, 1024); 
 }
 /*利用正则表达式得到图片链接*/
 $reg_tag = '/<img.*?\"([^\"]*(jpg|bmp|jpeg|gif)).*?>/'; 
 $ret = preg_match_all($reg_tag, $site_content, $match_result); 
 fclose($site_fd); 
 return $match_result[1]; 
} 
  
/* 对图片链接进行修正 */
function revise_site($site_list, $base_site){ 
 foreach($site_list as $site_item) { 
  if (preg_match('/^http/', $site_item)) { 
   $return_list[] = $site_item; 
  }else{ 
   $return_list[] = $base_site."/".$site_item; 
 } 
 }
 return $return_list; 
}
  
/*得到图片名字,并将其保存在指定位置*/
function get_pic_file($pic_url_array, $pos){ 
 $reg_tag = '/.*\/(.*?)$/'; 
 $count = 0; 
 foreach($pic_url_array as $pic_item){ 
  $ret = preg_match_all($reg_tag,$pic_item,$t_pic_name);
  $pic_name = $pos.$t_pic_name[1][0]; 
  $pic_url = $pic_item;
 print($pic_url."\n"); 
 }
 return 0; 
}
  
function main(){ 
/* 待抓取图片的网页地址 */
 $site_name = "/Users/joey/Desktop/long_text_2018-05-17-14-48-48.txt"; 
 $img_url = get_img_url($site_name); 
 $img_url_revised = revise_site($img_url, $site_name); 
 $img_url_unique = array_unique($img_url_revised); //unique array 
 get_pic_file($img_url_unique,"./"); 
} 
  
main(); 
?> 


本文链接: http://www.dtmao.cc/news_show_1100172.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?