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 相关文章推荐
dedecms系统常用术语汇总
Apr 03 PHP
php定时删除文件夹下文件(清理缓存文件)
Jan 23 PHP
利用curl抓取远程页面内容的示例代码
Jul 23 PHP
php统计时间和内存使用情况示例分享
Mar 13 PHP
php创建多级目录的方法
Mar 24 PHP
CodeIgniter使用smtp服务发送html邮件的方法
Jun 10 PHP
php实现图片上传时添加文字和图片水印技巧
Apr 18 PHP
php mysql like 实现多关键词搜索的方法
Oct 29 PHP
php实现PDO中捕获SQL语句错误的方法
Feb 16 PHP
thinkphp5 URL和路由的功能详解与实例
Dec 26 PHP
Ajax+PHP实现的删除数据功能示例
Feb 12 PHP
PHP实现八皇后算法
May 06 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
咖啡与牛奶
2021/03/03 冲泡冲煮
使用php重新实现PHP脚本引擎内置函数
2007/03/06 PHP
PHP 时间转换Unix时间戳代码
2010/01/22 PHP
PHP语法自动检查的Vim插件
2014/08/11 PHP
使用PHPExcel实现数据批量导出为excel表格的方法(必看)
2017/06/09 PHP
CheckBox 如何实现全选?
2006/06/23 Javascript
一个js拖拽的效果类和dom-drag.js浅析
2010/07/17 Javascript
javaScript矢量图表库-gRaphael几行代码实现精美的条形图/饼图/点图/曲线图
2013/01/09 Javascript
javascript制作坦克大战全纪录(2)
2014/11/27 Javascript
JQuery创建DOM节点的方法
2015/06/11 Javascript
jQuery easyui的validatebox校验规则扩展及easyui校验框validatebox用法
2016/01/18 Javascript
jquery动态遍历Json对象的属性和值的方法
2016/07/27 Javascript
Node.js使用cookie保持登录的方法
2018/05/11 Javascript
微信小程序如何实现radio单选框单击打勾和取消
2020/01/21 Javascript
Python代码的打包与发布详解
2014/07/30 Python
简单介绍Python下自己编写web框架的一些要点
2015/04/29 Python
python批量添加zabbix Screens的两个脚本分享
2017/01/16 Python
Python断言assert的用法代码解析
2018/02/03 Python
对python使用http、https代理的实例讲解
2018/05/07 Python
Python实现的当前时间多加一天、一小时、一分钟操作示例
2018/05/21 Python
Python pandas.DataFrame调整列顺序及修改index名的方法
2019/06/21 Python
python3 自动识别usb连接状态,即对usb重连的判断方法
2019/07/03 Python
pytorch 固定部分参数训练的方法
2019/08/17 Python
Python英文文章词频统计(14份剑桥真题词频统计)
2019/10/13 Python
如何使用Python脚本实现文件拷贝
2019/11/20 Python
Numpy一维线性插值函数的用法
2020/04/22 Python
浅谈keras中的目标函数和优化函数MSE用法
2020/06/10 Python
IE8下CSS3选择器nth-child() 不兼容问题的解决方法
2016/11/16 HTML / CSS
CSS3 transforms应用于背景图像的解决方法
2019/04/16 HTML / CSS
Mytheresa英国官网:拥有160多个奢侈品品牌
2016/10/09 全球购物
Mistine官方海外旗舰店:泰国国民彩妆品牌
2016/12/28 全球购物
企业消防安全制度
2014/02/02 职场文书
电子商务个人职业生涯规划范文
2014/02/12 职场文书
3.12植树节活动总结2014
2014/03/13 职场文书
幼儿园个人总结
2015/02/28 职场文书
Python学习之迭代器详解
2022/04/01 Python