Задать вопрос
@romaaa32

Как вытащить картинку со страницы?

5b16b26a42ea6575453852.jpeg

Ссылка на картинку с надписью вопросом "Нота" http://site.ru/captcha_question/629
Функция copy();копирует и создает пустой текст.
file_​get_​contents ----- file_​put_​contents тоже самое.
Curl с заголовками, куки и всем прочим открывает ту картинку так, как если на ПК открыть её как текстовый файл:
PNG  IHDR9jgAMAasRGB cHRMz&u0`:pQ<bKGD	X pHYsHHFk>'WIDATxڵ]y\TDz@My █QFԨƨQ\/qKD# -Gb5nQQ+ ...


Подскажите в каком направлении двигаться. Ничего не получается.

Если через Curl открыть эту страницу как на скрине - все картинки отображаются. Может тут ее распознать можно?

Если после Curl написать это:
echo "<img src='http://site.ru/captcha_question/629' />";
Картинка отображается правильно
  • Вопрос задан
  • 291 просмотр
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
kimono
@kimono
Web developer
$img = file_get_contents('http://site.ru/nota.jpg');
file_put_contents('/var/www/site.domain/images/nota.jpg', $img);
echo '<img src="/images/nota.jpg" />';
Ответ написан
@romaaa32 Автор вопроса
Решение найдено.
Нашел сниффером вот такую строку: Content-Transfer-Encoding: binary

После чего сделал так: Закодировал и разкодировал в base64
...
$t1 = curl($cookie, $url_game.'/captcha_question/629', $url_game) or die('Ошибка: 2');

$tr = base64_encode($t1);

$tr = base64_decode($tr);
file_put_contents('img.png', $tr);


Результат рабочая нужная картинка)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽