PHP采集图片实例(PHP采集)
以下为引用的内容:
/**
* 采集图片php程序
*
* Copyright(c) 2008 by 小超(ccxxcc) All rights reserved
*
* To contact the author write to {@link mailto:ucitmc@163.com}
*
* @author ccxxcc
* @version $Id: {filename},v 1.0 {time} $
* @package system
*/
set_time_limit(0);
/**
* 写文件
* @param string $file 文件路径
* @param string $str 写入内容
* @param char $mode 写入模式
*/
function wfile($file,$str,$mode='w')
{
$oldmask = @umask(0);
$fp = @fopen($file,$mode);
@flock($fp, 3);
if(!$fp)
{
Return false;
}
else
{
@fwrite($fp,$str);
@fclose($fp);
@umask($oldmask);
Return true;
}
}
function savetofile($path_get,$path_save)
{
@$hdl_read = fopen($path_get,'rb');
if($hdl_read == false)
{
echo("<span style='color:red'>$path_get can not get</span>");
Return ;
}
if($hdl_read)
{
@$hdl_write = fopen($path_save,'wb');
if($hdl_write)
{
while(!feof($hdl_read))
{
fwrite($hdl_write,fread($hdl_read,8192));
}
fclose($hdl_write);
fclose($hdl_read);
return 1;
}
else
return 0;
}
else
return -1;
}
function getExt($path)
{
$path = pathinfo($path);
return strtolower($path['extension']);
}
/**
* 按指定路径生成目录
*
* @param string $path 路径
*/
function mkDirs($path)
{
$adir = explode('/',$path);
$dirlist = '';
$rootdir = array_shift($adir);
if(($rootdir!='.'||$rootdir!='..')&&!file_exists($rootdir))
{
@mkdir($rootdir);
}
foreach($adir as $key=>$val)
{
if($val!='.'&&$val!='..')
{
$dirlist .= "/".$val;
$dirpath = $rootdir.$dirlist;
if(!file_exists($dirpath))
{
@mkdir($dirpath);
@chmod($dirpath,0777);
}
}
}
}
/**
* 从文本中取得一维数组
*
* @param string $file_path 文本路径
*/
function getFileListData($file_path)
{
$arr = @file($file_path);
$data = array();
if(is_array($arr) && !empty($arr))
{
foreach($arr as $val)
{
$item = trim($val);
if(!empty($item))
{
$data[] = $item;
}
}
}
Return $data;
}
//采集开始
//传入自己的需要采集的图片url列表文本文件 每个图片url写一行
$url_file = isset($_GET['file'])&&!empty($_GET['file'])?$_GET['file']:null;
$txt_url = "txt/".$url_file;
$urls = array_unique(getFileListData($txt_url));
if(empty($urls))
{
echo('<div style="color:red">无链接地址</div>');
die();
}
$save_url = "images/".date("y_m_d",time())."/";
mkDirs($save_url); //按日期建立文件夹
$i = 1;
if(is_array($urls)&&count($urls))
{
foreach($urls as $val)
{
savetofile($val,$save_url.date("His",time())."_".$i.".".getExt($val));
echo($i.".".getExt($val)." got\n");
$i++;
}
}
echo('<div style="color:green">finish</div>');
?>
著作权归作者所有。
商业转载请联系作者获得授权,非商业转载请注明出处。
作者:站长之家编辑
链接:https://www.chinaz.com/program/2008/1017/41142.shtml
来源:站长之家
PHP采集图片实例(PHP采集)的更多相关文章
- Python查询MySQL进行远程采集图片实例
这是四五年以前做小说站采集图片时写过唯一一次 Python 代码 #!/usr/bin/python #-*-coding:utf-8-*- import MySQLdb, os, socket, t ...
- php正则获取html图片标签信息(采集图片)
php获取html图片标签信息(采集图片),实现图片采集及其他功能,带代码如下: <?php $str="<img src='./a.jpg'/>111111<img ...
- 使用file_get_content系列函数和使用curl系列函数采集图片的性能对比
由于公司的一个汽车网站的后台的汽车内容都是主要是来自与汽车之家的,编辑的同事们必须天天手动去对着汽车之家来添加汽车,实在是太蛋疼了.于是乎,为了改变这种状况,作为一个开发码农,我的任务就来了...那就 ...
- Linux 下V4l2摄像头采集图片,实现yuyv转RGB,RGB转BMP,RGB伸缩,jpeglib 库实现压缩RGB到内存中,JPEG经UDP发送功(转)
./configure CC=arm-linux-gnueabihf-gcc LD=arm-linux-gnueabihf-ld --host=arm-linux --prefix=/usr/loca ...
- 六大免费网站数据采集器对比(火车头,海纳,云采集,ET,三人行,狂人采集)
2013年02月27日 PHP开源系统 暂无评论 阅读 497 views 次 在目前的站长圈内,比较流行的采集工具有很多,但是总结起来,比较出名的免费的就这么几个:火车头,海纳,云采集,ET,三人行 ...
- WebUploader实现采集图片的功能
项目最开始用百度团队的文件上传组件做了个物料照片采集的功能,后来做员工头像采集时竟然不知道怎么使用了. 参照官方Demo: http://fex.baidu.com/webuploader/getti ...
- thinkphp5使用querylist采集图片示例
首先composer引入querylist composer require jaeger/querylist 注意需要php7.0以上版本 <?php namespace app\index\ ...
- laravel 登录+中间件拦截+红柚小说网小说采集+图片本地化
.......................登录界面 <!doctype html> <html lang="en"> <head> < ...
- python多线程采集图片
cmd中运行 >python untitled2.py 图片的网站 import requests import threading from bs4 import BeautifulSo ...
- 基于V4L2摄像头采集图片程序设计
#ifndef __COMMON_H #define __COMMON_H //该头文件定义的是摄像头在屏幕上显示的宽度和高度 #include<stdio.h> #include< ...
随机推荐
- mac安装spark
一.基础信息 spark版本:spark-3.1.3-bin-hadoop3.2 hadoop版本:hadoop-3.2.1 scala版本:scala-2.11.12 建议3.12版本 下载地址: ...
- FreeSql学习笔记——0.FreeSql启动!
FreeSql FreeSql是功能强大的 .NET ORM,支持 .NetFramework 4.0+..NetCore 2.1+.Xamarin等支持 NetStandard 所有运行平台.支持 ...
- Transformer-Squared:停止微调 LLMs
Transformer-Squared:停止微调 LLMs 自适应大语言模型背后的架构.Transformer-Squared 的数学与代码,以及奇异值分解 DALL-E 生成的图片 我们已经进入了这 ...
- [CF494D] Birthday 题解
首先 \(S(u)\) 显然是 \(u\) 的子树. 假如 \(u\) 是定点,问题转化为区间求平方和,十分简单. 于是我们用线段树维护区间平方和,支持区间加,然后离线问题,在 \(u\) 的位置处理 ...
- autMan奥特曼机器人对接新千寻Pro微信框架详细教程
文件下载 1.安装指定版本微信 https://www.123865.com/s/3Wd9-q13jH 2.最新千寻pro下载 [点此网盘下载] 框架教程 1.安装上面的指定微信版本,跟最新的千寻框架 ...
- 百万架构师第四十三课:Nginx:Nginx 应用实战|JavaGuide
百万架构师系列文章阅读体验感更佳 原文链接:https://javaguide.net 公众号:不止极客 课程目标: Nginx 反向代理功能配置 Nginx 负载均衡实战 Nginx 动静分离配置 ...
- 浅谈Tox之一
本文分享自天翼云开发者社区<浅谈Tox之一>,作者:Moonriver What is tox? tox是通用的virtualenv管理和测试命令行工具,可用于: 使用不同的Python版 ...
- python sqlmap 检测sql注入点及php网站sql注入防护运维操作实例
问题描述:使用python sqlmap 检测存在sql注入风险,网站为php语言 操作步骤:1.本地电脑系统是win 7,查看未安装python,需要先安装python,注:win 7安装pytho ...
- SuperSocket 服务端 和 SuperSocket.ClientEngine 客户端及普通客户端
internal class Program { //static void Main(string[] args) //{ // byte[] arr = new byte[1024]; // 1. ...
- Easyexcel(5-自定义列宽)
注解 @ColumnWidth @Data public class WidthAndHeightData { @ExcelProperty("字符串标题") private St ...