19.01.2018
Чтобы не тратить время на поиски в интернете или не писать его самому, представляем уже готовый скрипт. С его помощью скачивали около 500 небольших картинок, всё проходило удачно.
Количество показов: 3419
Скрипт скачать картинки, файлы с удаленного сервера с иерархией папок, рекурсивно
Задача не частая, но иногда появляется необходимость скачать картинки (изображения), файлы с удаленного сервера сохранив иерархию (вложенность) папок (директорий), то есть рекурсивно.Чтобы не тратить время на поиски в интернете или не писать его самому, представляем уже готовый скрипт. С его помощью скачивали около 500 небольших картинок, всё проходило удачно.
<?php
$txt="
http://domen.ru/image/catalog/tovar/peskobeton/foto.jpg
http://domen.ru/image/catalog/tovar/shpatlevki/foto.jpg
http://domen.ru/image/catalog/tovar/shtukaturki/foto2.jpg
http://domen.ru/image/catalog/tovar/shtukaturki/foto3.png
http://domen.ru/image/catalog/tovar/shtukaturki/foto4.jpg
http://domen.ru/image/catalog/tovar/2.jpeg
"; //сюда вставляем все наши ссылки их было более 1000
$a1=explode("\n",$txt);
$a1=array_unique($a1);
foreach($a1 as $url) {
$ch = curl_init($url); // инициализация
$path_parts = pathinfo($url); //получаем название файла из URL
$urlParts = parse_url($path_parts['dirname']);
$dir = '/home/admin/web/site.ru/public_html/upload'.$urlParts['path']; //меняем на свой путь до нужной директории
// сохраняем полученный файл с его оригинальным названием
if (!mkdir($dir, 0777, true)) {
echo ('<br>');
}
$fp = fopen($dir.'/'.$path_parts['basename'], 'wb');
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
fclose($fp);
echo $dir;
}
?>
Количество показов: 3419