CURL и парсинг изображений
182 сообщения
#13 лет назад
public function parse($file) {
$ch = curl_init ();
curl_setopt ($ch , CURLOPT_URL , $file);
curl_setopt ($ch , CURLOPT_USERAGENT , "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11");
curl_setopt ($ch , CURLOPT_HEADER , 0);
curl_setopt ($ch , CURLOPT_RETURNTRANSFER , 1 );
curl_setopt ($ch , CURLOPT_BINARYTRANSFER , 1);
$content = curl_exec($ch);
echo $content;
curl_close($ch);
}
link (на этот метод): ссылка
С текстовыми файлами все ок. Все парсит. Но при получении изображений иероглифы. Другими словами, как получить объект с теми же HEADER параметрами?
44 сообщения
#13 лет назад
Перед echoheader("Content-type: image/png");
И контент тайп можно определять с $content если выставить curl_setopt ($ch , CURLOPT_HEADER , 1);
182 сообщения
164 сообщения
182 сообщения
#13 лет назад
Metallica, Я видел этот класс уже вчера в гугле, ну по коду видно что оно сохраняет к себе на сервер. Можно ли без сохранения просто вывести ее?
164 сообщения
#13 лет назад
А, для вывода, ну тогда нужно сделать сначала imagepng или какой там формат вместе с хедером тогда вывед его ничего не покажет если работаете с картинкой
182 сообщения
#13 лет назад
Вообще ничего не могу понять. Обычным способом без CURL тоже выводит пустой image =(((public function parse($file) {
header("Content-type: " .image_type_to_mime_type(IMAGETYPE_JPEG));
header('Content-Disposition: filename="test.jpg"');
$img = imagecreatefromjpeg($file);
if ($img) {
imagejpeg($img);
}
}
ссылка
44 сообщения
#13 лет назад
$ch = curl_init ();
curl_setopt ($ch , CURLOPT_URL , 'ссылка;);
curl_setopt ($ch , CURLOPT_USERAGENT , "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11");
curl_setopt ($ch , CURLOPT_HEADER , 0);
curl_setopt ($ch , CURLOPT_RETURNTRANSFER , 1 );
curl_setopt ($ch , CURLOPT_BINARYTRANSFER , 1);
$content = curl_exec($ch);
curl_close($ch);
header("Content-type: image/png");
echo $content;
Рабочий код