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 中的面向对象编程:通向大型 PHP 工程的办法
Dec 03 PHP
php使用Smarty的相关注意事项及访问变量的几种方式
Dec 08 PHP
php stripslashes和addslashes的区别
Feb 03 PHP
CodeIgniter启用缓存和清除缓存的方法
Jun 12 PHP
Yii结合CKEditor实现图片上传功能
Jun 13 PHP
深入理解PHP中的global
Aug 19 PHP
php中数字、字符与对象判断函数用法实例
Nov 26 PHP
使用php从身份证号中获取一系列线索(星座、生肖、生日等)
May 11 PHP
Yii2创建表单(ActiveForm)方法详解
Jul 23 PHP
thinkphp中AJAX返回ajaxReturn()方法分析
Dec 06 PHP
Yii2.0框架模型多表关联查询示例
Jul 18 PHP
php设计模式之迭代器模式实例分析【星际争霸游戏案例】
Apr 07 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桌面中心(四) 数据显示
2007/03/11 PHP
php将一维数组转换为每3个连续值组成的二维数组
2016/05/06 PHP
php根据数据id自动生成编号的实现方法
2016/10/16 PHP
ECMAScript5中的对象存取器属性:getter和setter介绍
2014/12/08 Javascript
javascript日期计算实例分析
2015/06/29 Javascript
浅谈window对象的scrollBy()方法
2015/07/15 Javascript
jQuery+ajax+asp.net获取Json值的方法
2016/06/08 Javascript
BootStrap实现树形目录组件代码详解
2016/06/21 Javascript
js原生之焦点图转换加定时器实例
2016/12/12 Javascript
Vue.js组件通信的几种姿势
2017/10/23 Javascript
JS实现百度搜索接口及链接功能实例代码
2018/02/02 Javascript
p5.js 毕达哥拉斯树的实现代码
2018/03/23 Javascript
springMvc 前端用json的方式向后台传递对象数组方法
2018/08/07 Javascript
Jquery的autocomplete插件用法及参数讲解
2019/03/12 jQuery
layui上传图片到服务器的非项目目录下的方法
2019/09/26 Javascript
vue 导航内容设置选中状态样式的例子
2019/11/01 Javascript
Element InputNumber 计数器的实现示例
2020/08/03 Javascript
[00:32]2018DOTA2亚洲邀请赛EG出场
2018/04/03 DOTA
Python实现对比不同字体中的同一字符的显示效果
2015/04/23 Python
python实现俄罗斯方块
2018/06/26 Python
python3+PyQt5 数据库编程--增删改实例
2019/06/17 Python
关于python pycharm中输出的内容不全的解决办法
2020/01/10 Python
基于pytorch的lstm参数使用详解
2020/01/14 Python
django实现日志按日期分割
2020/05/21 Python
python 基于pygame实现俄罗斯方块
2021/03/02 Python
一组SQL面试题
2016/02/15 面试题
优秀的个人求职信范文
2014/05/09 职场文书
合同意向书范本
2014/07/30 职场文书
小学生十佳少年事迹材料
2014/08/20 职场文书
尊老爱幼演讲稿
2014/09/04 职场文书
市级三好学生评语
2014/12/29 职场文书
单位领导婚礼致辞
2015/07/28 职场文书
创业者如何撰写出一份打动投资人的商业计划书?
2019/07/02 职场文书
在CSS中映射鼠标位置并实现通过鼠标移动控制页面元素效果(实例代码)
2021/04/22 HTML / CSS
Pyqt5将多个类组合在一个界面显示的完整示例
2021/09/04 Python
tomcat正常启动但网页却无法访问的几种解决方法
2022/05/06 Servers