php抓取网站图片的程序
2014-01-28 00:00
176 查看
此程序实现了网页源代码捕获,图片链接获取、分析、并将同样的图片链接合并功能,实现了图片抓取功能。利用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 = '/<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("Downloading ".$pic_url." "); $img_read_fd = fopen($pic_url,"r"); $img_write_fd = fopen($pic_name,"w"); $img_content = ""; while(!feof($img_read_fd)){ $img_content .= fread($img_read_fd,1024); } fwrite($img_write_fd,$img_content); fclose($img_read_fd); fclose($img_write_fd); print("[OK] "); } return 0; } function main(){ /* 待抓取图片的网页地址 */ $site_name = "http://image.cn.yahoo.com"; $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(); ?>
相关文章推荐
- php抓取并保存网站图片的实现代码
- php抓取网站图片并保存的实现方法
- PHP从网站抓取图片并保存本地的代码
- 【python】100行代码python爬虫程序,抓取网站图片存储本地(附:中文链接解决)
- php远程抓取网站图片并保存
- php小偷程序[抓取图片]
- PHP封装的远程抓取网站图片并保存功能类
- php远程抓取网站图片并保存
- php抓取网站图片源码
- PHP抓取网站图片脚本
- 蜘蛛爬虫类程序抓取有防盗链的网站处理 php和wget命令简单破解防盗链网站的功能
- php抓取并保存网站图片的实现代码
- php远程抓取网站图片并保存
- php抓取网站图片并保存的实现方法
- php 文件操作之抓取网站图片
- PHP抓取网站页面、CSS文件、图片
- php远程抓取网站图片并保存
- php远程抓取网站图片并保存
- php远程抓取网站图片并保存
- php远程抓取网站图片并保存