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程序设计有所帮助。
热文精选
更多资讯推荐
更多- Stable Diffusion 2.0 发布,加强成人内容过滤
- .NET 7 正式发布
- A3Mall 开源商城系统 v2.1 发布
- FydeOS v14 版本更新:优化输入法体验+重构安卓子系统+全新应用启动器
- ThinkPHP V6.0.8版本发布——多环境变量配置支持
- 毕昇 JDK 8u292、11.0.11 发布!
- KubeVela 1.0:开启可编程式应用平台的未来
- Eclipse 4.19 稳定版发布
- 阿里巴巴 Arthas 3.5.0 版本发布,支持反编译打印行号和统一鉴权
- Debian 11 Bullseye 即将进入冻结,Debian 13 代号 Trixie
- Rancher 2.5 发布,新增支持边缘集群的 GitOps
- FlashDB IoT 超轻量级嵌入式数据库