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. (Это конечно может использоваться как в благих целях, так и в целях плагиата. Мною подразумеваются конечно же исключительно положительные цели)

Автор:







ну, ну. … а если файлов будет скажем 100-250? хостер тебе спасибо не скажет.
такой вариант уже не пойдет.
Думаю любой вариант не подойдет для закачки большого кол-ва файлов с использованием шаред-хостинга. VDS в таком случае думаю исправит ситуацию.
$url = ‘путь к удаленной картинке’;
$dir = ‘адрес дириктории для сохранения’;
$path_parts = pathinfo($url);
copy($url,$dir.$path_parts[‘basename’]);
делов то 😉
Не верно, команда copy не работает с удаленными хостами и получить удаленную картинку например с последующим ее сохранением на собственном хостинге таким образом не получится.
«Не верно, команда copy не работает с удаленными хостами и получить удаленную картинку например с последующим ее сохранением на собственном хостинге таким образом не получится.»
как то делал грабер и изображения с сайта сохранял на сервер с помощью copy
или речь о чем то другом?
так же можно и с помощью file_get_contents, file_put_contents