当前位置:首页 > CMS教程 > 其它CMS > 列表

CodeIgniter实现从网站抓取图片并自动下载到文件夹里的方法

发布:smiling 来源: PHP粉丝网  添加日期:2021-05-28 20:24:28 浏览: 评论:0 

这篇文章主要介绍了CodeIgniter实现从网站抓取图片并自动下载到文件夹里的方法,实例分析了CodeIgniter网页图片操作的相关技巧,需要的朋友可以参考下

本文实例讲述了CodeIgniter实现从网站抓取图片并自动下载到文件夹里的方法,分享给大家供大家参考,具体如下:

因为某网站看图比较坑爹,要一页一页的翻页。。。。所以。。。。就写了这么个东西

(我是产品不是程序员)运行速度简直无法忍受,而且经常会有错误发生,所以希望大家帮忙改进(PHP)。

当然也欢迎看到PYTHON,GOLANG的版本~~^_^

1. controllers:

$this->load->helper('date');

$this->load->helper('phpQuery');

我是把phpQuery单文件放到helper里了

2. view:

这里只是为了快速出产品,所以直接在VIEW里写的代码,请无视变量名。。。

  1. <?php 
  2. $imageslist = phpQuery::newDocumentFile('http://g.e-hentai.org/g/xxxxx/xxxxxxx/'); 
  3. //首页 
  4. $pn = 1;//页数 
  5. $ps = $imageslist->find('.ptt td a');//从首页抓页面导航 
  6. //从页面导航开始获取页面内容 
  7. foreach($ps as $p
  8.   echo '第'.$pn++.'页:<a href="'.pq($p)->attr("href").'"/></br>'; 
  9.   $imagesnow = phpQuery::newDocumentFile(pq($p)->attr("href")); 
  10.   //单页内容 
  11.   $images = $imagesnow->find('#gdt a');//抓取图片页列表 
  12.   foreach($images as $image
  13.   { 
  14.     echo '<a href="'.pq($image,$imagesnow)->attr("href").'"/></br>'; 
  15.     $imagebigs = phpQuery::newDocumentFile(pq($image,$imagesnow)->attr("href")); 
  16.     //获取单图片页地址 
  17.     echo '<img src="'.$imagebigs->find('#i3 img')->attr('src').'"></br>';//输出图片 
  18.     ob_start(); 
  19.     readfile($imagebigs->find('#i3 img')->attr('src')); 
  20.     $img = ob_get_contents(); 
  21.     ob_end_clean(); 
  22.     $filename='img/'.now().'.jpg'
  23.     $f=fopen($filename,'a'); 
  24.     fwrite($f,$img); 
  25.     fclose($f); 
  26.   } 
  27. ?>

Tags: CodeIgniter抓取图片

分享到: