PHP скачивание файлов по списку URL

Author Роман Чернышов    Category PHP     Tags , Комментариев 5 Дата 21 Янв

durl PHP скачивание файлов по списку URLДоброго времени уважаемые читатели. Очередной пост — заметка, на тему PHP скачивание файлов по списку URL. Из заголовка поста думаю уже становится ясно о чем пойдет речь. Перейдем к сути дела.

Задача: Скачать большое количество файлов расположенных на удаленном сервере(серверах) имея при этом список адресов URL этих файлов. Это могут быть как каталоги картинок, программ или чего либо еще.

Решение:

Решить данную задачу можно с помощью просто PHP скрипта с использованием CURL.

Список URL файлов

$txt="
http://example.com/common/img/fe/form/main-680-white-important.gif
http://examplecom/common/img/fe/form/main-680-white-checkout-back-link.gif
http://example.com/common/img/fe/form/main-680-white-checkout-cart-link.gif
";
 
$a1=explode("\n",$txt);
$a1=array_unique($a1);
 
foreach($a1 as $url) {
$ch = curl_init($url); // инициализация
$path_parts = pathinfo($url); //получаем название файла из URL
 
// сохраняем полученный файл с его оригинальным названием
 
$fp = fopen('images/'.$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 "$it<br>";
}

В результате имеем папку с закаченными файлами из удаленных источников.

Куда применить? Иногда такой метод применяется для скачивания картинок дизайна какого нибудь сайта донора. Список адресов картинок можно получить из его файла стилей CSS. (Это конечно может использоваться как в благих целях, так и в целях плагиата. Мною подразумеваются конечно же исключительно положительные цели)

5 комментариев to “PHP скачивание файлов по списку URL”

  • VitCOM 01.02.2013 в 9:37 пп

    ну, ну. … а если файлов будет скажем 100-250? хостер тебе спасибо не скажет.

    такой вариант уже не пойдет.

    • Роман Чернышов 04.06.2013 в 12:56 пп

      Думаю любой вариант не подойдет для закачки большого кол-ва файлов с использованием шаред-хостинга. VDS в таком случае думаю исправит ситуацию.

  • PHPbot 05.04.2013 в 2:36 дп

    $url = ‘путь к удаленной картинке’;
    $dir = ‘адрес дириктории для сохранения’;
    $path_parts = pathinfo($url);
    copy($url,$dir.$path_parts[‘basename’]);

    делов то 😉

    • Роман Чернышов 04.06.2013 в 12:46 пп

      Не верно, команда copy не работает с удаленными хостами и получить удаленную картинку например с последующим ее сохранением на собственном хостинге таким образом не получится.

  • Олег 19.10.2016 в 6:09 пп

    «Не верно, команда copy не работает с удаленными хостами и получить удаленную картинку например с последующим ее сохранением на собственном хостинге таким образом не получится.»

    как то делал грабер и изображения с сайта сохранял на сервер с помощью copy
    или речь о чем то другом?
    так же можно и с помощью file_get_contents, file_put_contents

Оставить комментарий

Консультации

Консультант Чернышов Р.В. Зайдайте вопрос на любую из тем:
Бесплатно и без регистрации!

Задать вопрос
Все вопросы
Последние вопросы
Поиск по блогу
Категории
Архив
Новое на сайте
Портфолио Все работы


www.detskiy-mir.net
www.detskydoctor.ru
www.betelit.ru
www.all-alliance.ru
www.videogonok.ru
www.carpfishing.by
www.property-greek.com
www.domcons.ru

с 2009 года по сегодняшний день, создано более 300 сайтов...