这篇文章主要介绍了CodeIgniter实现从网站抓取图片并自动下载到文件夹里的方法,实例分析了CodeIgniter网页图片操作的相关技巧,需要的朋友可以参考下
本文实例讲述了CodeIgniter实现从网站抓取图片并自动下载到文件夹里的方法。分享给大家供大家参考。具体如下:
因为某网站看图比较坑爹,要一页一页的翻页。。。。所以。。。。就写了这么个东西
(我是产品不是程序员)运行速度简直无法忍受,而且经常会有错误发生,所以希望大家帮忙改进(PHP)。
当然也欢迎看到PYTHON,GOLANG的版本~~^_^
1. controllers:
- $this->load->helper('date');
- $this->load->helper('phpQuery');
- //我是把phpQuery单文件放到helper里了
2. view:
这里只是为了快速出产品,所以直接在VIEW里写的代码,请无视变量名。。。
- <?php
- $imageslist = phpQuery::newDocumentFile('http://g.e-hentai.org/g/xxxxx/xxxxxxx/');
- //首页
- $pn = 1;//页数
- $ps = $imageslist->find('.ptt td a');//从首页抓页面导航
- //从页面导航开始获取页面内容
- foreach($ps as $p)
- {
- echo '第'.$pn++.'页:<a href="'.pq($p)->attr("href").'"/></br>';
- $imagesnow = phpQuery::newDocumentFile(pq($p)->attr("href"));
- //单页内容
- $images = $imagesnow->find('#gdt a');//抓取图片页列表
- foreach($images as $image)
- {
- echo '<a href="'.pq($image,$imagesnow)->attr("href").'"/></br>';
- $imagebigs = phpQuery::newDocumentFile(pq($image,$imagesnow)->attr("href"));
- //获取单图片页地址
- echo '<img src="'.$imagebigs->find('#i3 img')->attr('src').'"></br>';//输出图片
- ob_start();
- readfile($imagebigs->find('#i3 img')->attr('src'));
- $img = ob_get_contents();
- ob_end_clean();
- $filename='img/'.now().'.jpg';
- $f=fopen($filename,'a');
- fwrite($f,$img);
- fclose($f);
- }
- }
- ?>
希望本文所述对大家基于CodeIgniter的php程序设计有所帮助。
新闻热点
疑难解答