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配置心得包含MYSQL5乱码解决
Nov 20 PHP
phpMyAdmin下载、安装和使用入门教程
May 31 PHP
组合算法的PHP解答方法
Feb 04 PHP
整理的一些实用WordPress后台MySQL操作命令
Jan 07 PHP
php-cli简介(不会Shell语言一样用Shell)
Jun 03 PHP
PHP CURL获取返回值的方法
May 04 PHP
php curl登陆qq后获取用户信息时证书错误
Feb 03 PHP
分享php代码将360浏览器导出的favdb的sqlite数据库文件转换为html
Dec 09 PHP
详解PHP对象的串行化与反串行化
Jan 24 PHP
Yii中CGridView禁止列排序的设置方法
Jul 12 PHP
浅谈Laravel队列实现原理解决问题记录
Aug 19 PHP
laravel model 两表联查示例
Oct 24 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 APC配置文件2套和参数详解
2014/06/11 PHP
ecshop实现smtp发送邮件
2015/02/03 PHP
PHP session会话操作技巧小结
2016/09/27 PHP
php排序算法实例分析
2016/10/17 PHP
解决thinkphp5未定义变量会抛出异常,页面错误,请稍后再试的问题
2019/10/16 PHP
玩转jQuery按钮 请告诉我你最喜欢哪些?
2012/01/08 Javascript
深入理解JavaScript系列(26):设计模式之构造函数模式详解
2015/03/03 Javascript
深入解析JavaScript中的数字对象与字符串对象
2015/10/21 Javascript
深入理解MVC中的时间js格式化
2016/05/19 Javascript
基于BootStrap实现局部刷新分页实例代码
2016/08/08 Javascript
jQuery 获取select选中值及清除选中状态
2016/12/13 Javascript
获取IE浏览器Cookie信息的方法
2017/01/23 Javascript
jQuery使用方法
2017/02/04 Javascript
Angular实现下拉框模糊查询功能示例
2018/01/03 Javascript
vue-cli3 项目从搭建优化到docker部署的方法
2019/01/28 Javascript
实现elementUI表单的全局验证的方法步骤
2019/04/29 Javascript
nodejs中request库使用HTTPS代理的方法
2019/04/30 NodeJs
vue限制输入框只能输入8位整数和2位小数的代码
2019/11/06 Javascript
JS实现点击下拉列表文本框中出现对应的网址,点击跳转按钮实现跳转
2019/11/25 Javascript
vue实现移动端图片上传功能
2019/12/23 Javascript
微信小程序用canvas画图并分享
2020/03/09 Javascript
如何区分vue中的v-show 与 v-if
2020/09/08 Javascript
[01:52]2014DOTA2西雅图邀请赛 V社开大会你不知道的小秘密
2014/07/08 DOTA
[50:02]完美世界DOTA2联赛PWL S2 Magma vs FTD 第三场 11.29
2020/12/03 DOTA
Python检测字符串中是否包含某字符集合中的字符
2015/05/21 Python
Python功能键的读取方法
2015/05/28 Python
Python中在脚本中引用其他文件函数的实现方法
2016/06/23 Python
香港永安旅游网:Wing On Travel
2017/04/10 全球购物
销售人员中英文自荐信
2013/09/22 职场文书
2014年预备党员学习两会心得体会
2014/03/17 职场文书
从严治党主题教育活动总结
2015/05/07 职场文书
中国汉字听写大会观后感
2015/06/02 职场文书
redis实现的四种常见限流策略
2021/06/18 Redis
制作能在nginx和IIS中使用的ssl证书
2021/06/21 Servers
Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解
2022/03/03 Python
MySQL优化之慢日志查询
2022/06/10 MySQL