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


Posted in PHP onJune 17, 2015

本文实例讲述了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程序设计有所帮助。

PHP 相关文章推荐
PHP设计模式之代理模式的深入解析
Jun 13 PHP
phpmailer中文乱码问题的解决方法
Apr 22 PHP
php实现的ping端口函数实例
Nov 12 PHP
PHP实现从远程下载文件的方法
Mar 12 PHP
54个提高PHP程序运行效率的方法
Jul 19 PHP
通过Email发送PHP错误的方法
Jul 20 PHP
Yii2 rbac权限控制之菜单menu实例教程
Apr 28 PHP
php将服务端的文件读出来显示在web页面实例
Oct 31 PHP
微信第三方登录(原生)demo【必看篇】
May 26 PHP
PHP+AJAX 投票器功能
Nov 11 PHP
thinkPHP+LayUI 流加载实现功能
Sep 27 PHP
Laravel 验证码认证学习记录小结
Dec 20 PHP
PHP基于MySQL数据库实现对象持久层的方法
Jun 17 #PHP
php使用curl打开https网站的方法
Jun 17 #PHP
php使用CURL不依赖COOKIEJAR获取COOKIE的方法
Jun 17 #PHP
PHP封装的HttpClient类用法实例
Jun 17 #PHP
PHP处理postfix邮件内容的方法
Jun 16 #PHP
PHP限制HTML内容中图片必须是本站的方法
Jun 16 #PHP
php采集中国代理服务器网的方法
Jun 16 #PHP
You might like
PHP 危险函数解释 分析
2009/04/22 PHP
PHP Undefined index报错的修复方法
2011/07/17 PHP
php中jpgraph类库的使用介绍
2013/08/08 PHP
PHP中常见的缓存技术实例分析
2015/09/23 PHP
PHP中用mysqli面向对象打开连接关闭mysql数据库的方法
2016/11/05 PHP
jQuery中与toggleClass等价的程序段 以及未来学习的方向
2010/03/18 Javascript
js如何实现设计模式中的模板方法
2013/07/23 Javascript
jquery列表拖动排列(由项目提取相当好用)
2014/06/17 Javascript
使用jQuery设置disabled属性与移除disabled属性
2014/08/21 Javascript
javascript 兼容各个浏览器的事件
2015/02/04 Javascript
jQuery插件multiScroll实现全屏鼠标滚动切换页面特效
2015/04/12 Javascript
JavaScript的RequireJS库入门指南
2015/07/01 Javascript
Angular2从搭建环境到开发步骤详解
2016/10/17 Javascript
关于Angularjs中跨域设置白名单问题
2018/04/17 Javascript
JS实现区分中英文并统计字符个数的方法示例
2018/06/09 Javascript
手把手教你如何使用nodejs编写cli命令行
2018/11/05 NodeJs
[02:54]辉夜杯主赛事第二日败者组 iG.V赛后采访
2015/12/26 DOTA
[43:41]VP vs RNG 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.21.mp4
2020/07/19 DOTA
[40:53]完美世界DOTA2联赛PWL S3 Magma vs DLG 第二场 12.18
2020/12/20 DOTA
Python利用ElementTree模块处理XML的方法详解
2017/08/31 Python
基于python OpenCV实现动态人脸检测
2018/05/25 Python
Python socket套接字实现C/S模式远程命令执行功能案例
2018/07/06 Python
Django中自定义模型管理器(Manager)及方法
2019/09/23 Python
使用Python实现 学生学籍管理系统
2019/11/26 Python
利用Python计算KS的实例详解
2020/03/03 Python
Python Tkinter图形工具使用方法及实例解析
2020/06/15 Python
浅析Python迭代器的高级用法
2020/07/16 Python
西班牙灯具网上商店:Lampara.es
2018/06/05 全球购物
LivingSocial英国:英国本地优惠
2019/02/22 全球购物
俄罗斯厨房产品购物网站:COOK HOUSE
2021/03/15 全球购物
.NET面试题:什么是反射
2016/09/30 面试题
交通局领导班子群众路线教育实践活动对照检查材料思想汇报
2014/10/09 职场文书
检查机关领导群众路线教育实践活动个人整改措施
2014/10/28 职场文书
黄山导游词
2015/01/31 职场文书
药品销售员2015年终工作总结
2015/10/22 职场文书
小学大队干部竞选稿
2015/11/20 职场文书