Парсинг картинки

Статус
В этой теме нельзя размещать новые ответы.

yeaahhh

Старатель
Регистрация
8 Май 2008
Сообщения
278
Реакции
11
Друзья, помогите пожалуйста с парсингом картинки. Знаю, что темы уже создавались.. Видел их, но так и не понял основного принципа выдирания картинки с другого сайта и переноса на свой..

Не совсем понял как работает copy()..

Вот, к примеру есть такая картинка:
Для просмотра ссылки Войди или Зарегистрируйся

Просьба, написать алгоритм с пояснениями(без изменения размера и т.п.).. Заранее большое спасибо..
 
Самый простой способ:
PHP:
$img = file_get_contents('http://site.ru/uploads/files/7bfdcad5dd.jpg');
if ($img) file_put_contents($_SERVER['DOCUMENT_ROOT'].'/image.jpg', $img);
В результате у Вас появится картинка под именем image.jpg в каталоге со скриптом.
 
Угу, а если сервак не отдаст картинку по каким то причинам (куки или реферер не правильный) то не появится.

Кстати ТС, по вашей ссылке совсем не картинка лежит.
 
Что-то не получается.. Наверное, что-то не правильно делаю..

PHP:
$img = "http://site1.ru/uploads/files/sdnsdnfsjnf.jpg";
$file_prefix = time() + rand( 1, 100 );
$v = "http://site2.ru/";
$img = file_get_contents('$img');
if ($img) 
file_put_contents('$v."/images/".$file_prefix.".jpg', $img);

Пишет ошибку:
PHP:
Warning: file_get_contents($img) [function.file-get-contents]: failed to open stream: No such file or directory in /home/mysite/public_html/ppp/pars.php on line 134
На этой линии:
PHP:
$img = file_get_contents('$img');
 
нужно
PHP:
$img = file_get_contents($img);
Если хотите забирать файл file_get_contents'ом то используйте Для просмотра ссылки Войди или Зарегистрируйся
 
lobzik, к сожалению, пока ещё не особо силён в php..

Мог бы кто-нибудь привести данный код в рабочий вид?
PHP:
$img = "http://site1.ru/uploads/files/sdnsdnfsjnf.jpg";
$file_prefix = time() + rand( 1, 100 );
$v = "http://site2.ru/";
$img = file_get_contents('$img');
if ($img) 
file_put_contents('$v."/images/".$file_prefix.".jpg', $img);
Параметры:
Изображение, которое нужно спарсить: Для просмотра ссылки Войди или Зарегистрируйся
Папка, в которую нужно вставить: Для просмотра ссылки Войди или Зарегистрируйся
Буду очень благодарен..
 
В одинарных кавычках переменные не обрабатываются

это
PHP:
$img = file_get_contents('$img');
и это
PHP:
file_put_contents('$v."/images/".$file_prefix.".jpg', $img);

будет работать не так, как вы думаете.
Вторая строка вообще работать не будет, даже без одинарных кавычек, потому что это "http://site2.ru/images/" не папка, а адрес.
 
Благодарю.. Дело сдвинолось с места..
после такого кода:
PHP:
$img = "http://site1.ru/uploads/files/sdnsdnfsjnf.jpg";
$file_prefix = time() + rand( 1, 100 );
$v = "http://site2.ru/";
$img = file_get_contents("$img");
if ($img) 
file_put_contents("$v.'/images/'.$file_prefix.'.jpg", $img);
Выскакивает следующая ошибка:
PHP:
Warning: file_put_contents() [function.file-put-contents]: Only 0 of 34303 bytes written, possibly out of free disk space in /home/mysite/public_html/ppp/pars.php on line 137
Свободного места на диске - 100мб.. Не подскажете, в чём теперь проблема?)
 
Ура.. До меня дошло..
Вторая строка вообще работать не будет, даже без одинарных кавычек, потому что это "http://site2.ru/images/" не папка, а адрес.
Получилось) Всем спасибо.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху