Как скачивать такие фото в коде (фото представлено в ввиде кода BASE64)

Тема в разделе "Скачивание картинок и файлов", создана пользователем Stan, 7 янв 2018.

  1. Stan

    Stan Active Member Пользователи

    Регистрация:
    15 июн 2011
    Сообщения:
    499
    Здравствуйте.

    Парсится описание ( граница парсинга стоит тэг img) и в нем идут фотки , у фото такой код <img alt="" height="273" src="data:image/jpeg;base64,iVBORw0KGgo.... и т.д >

    как такое скачивать?
     
  2. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте.

    Предоставьте реальный пример (адрес WEB-страницы).
     
  3. Stan

    Stan Active Member Пользователи

    Регистрация:
    15 июн 2011
    Сообщения:
    499
    вот адрес
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 44 постов.**
    фото в описании
    на скрине
     

    Вложения:

  4. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    2018-01-08_03-39-24.png
     

    Вложения:

    • stulvsem_ru.cdp
      Размер файла:
      35,2 КБ
      Просмотров:
      7
    Stan и xLime нравится это.
  5. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Ссылки недоступны для гостей
     
    Stan нравится это.
  6. Stan

    Stan Active Member Пользователи

    Регистрация:
    15 июн 2011
    Сообщения:
    499
    а если такие картинки находятся в границе парсинга описания , т.е. в границу берется весь код с текстом и внутри такие фото, не скачается?
    (я пока обнову не ставил, только вот оплатил подписнку на обновление )
     
    Root нравится это.
  7. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    Здравствуйте
    абстрактные примеры мы не рассматриваем! Предоставьте ссылку с конкретной проблемой, тогда будет разговор.
    Спасибо.
     
    Root и xLime нравится это.
  8. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    поиск-заменой подставлять группу макросов (для сохранения BASE64-картинок) в нужные места описания.
     
    Stan нравится это.
  9. Vesb

    Vesb Member Пользователи

    Регистрация:
    7 мар 2011
    Сообщения:
    50
    Извиняюсь за может глупый вопрос. Такая же ситуация. Паршу html страницу с текстом и картинками. Картинки автоматически скачиваются и их пути подставлются в спаршенный текст.
    Но не работает если картинки в BASE64
    Вот тут Ссылки недоступны для гостей написано как эти картинки скачивать по-отдельности. Мне же нужно, чтобы они автоматически скачивались при парсинге текста.

    Я так понял, что мне тут поможет
    Но я чо-то не очень понимаю, что это означает.

    По логике я могу предварительно в тексте сделать замену кода BASE64-картинок и далее парсить как обычно.
    11.png

    Но для этого мне нужно записать что-о типа этого

    Допустим такой код
    style="max-width: 1080px"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-srcse

    22.jpg
    Но так делать [BASE64DECODE] не будет работать в поиске замены. Поэтому хотел спросить что делать и что означает вот эта фраза
     
  10. Vesb

    Vesb Member Пользователи

    Регистрация:
    7 мар 2011
    Сообщения:
    50
    Так все таки, подскажите как можно скачивать такие картинки из текста?
    Я понимаю, что самой простой способ это изначально пройтись по тексту страницы и сделать замену закодированных урлов картинок в обычный. Но какой инструмент для этого использовать? в обычном поиске замены [BASE64DECODE] не будет работать
     
    Последнее редактирование: 17 июн 2018
  11. xLime

    xLime Well-Known Member Супер Модератор Модератор

    Регистрация:
    4 сен 2017
    Сообщения:
    401
    Это означает, что поиск заменой можно подставить в нужные места макрос [Ссылки недоступны для гостей]. На следующем этапе, при выполнении макросов шаблона вывода, эти картинки будут декодированы.

    Код:
    [REPLACE(%URL%|[BASE64DECODE]%URL%[/BASE64DECODE])]<CD_GRAN1>[/REPLACE]
     
  12. Vesb

    Vesb Member Пользователи

    Регистрация:
    7 мар 2011
    Сообщения:
    50
    Вот же блин. Почему я подумал, что так не будет работать. Большое спасибо
     
    xLime нравится это.
  13. Vesb

    Vesb Member Пользователи

    Регистрация:
    7 мар 2011
    Сообщения:
    50
    Извиняюсь, но что-то все таки не понятно.
    Мне нужно из текст картинки сами сохранялись. Картинки в base64
    Делаю предварительную замену в тексте
    <img src="data:image/gif;base64,{skip}">|[SAVETOFILE:555.gif{notcsv}{keepname}][BASE64DECODE]{skip}[/BASE64DECODE][/SAVETOFILE]
    в итоге перед парсингом я получаю в тексте следующий текст
    [SAVETOFILE:555.gif{notcsv}{keepname}][BASE64DECODE]R0lGODdhAQABAPAAAP///wAAACwAAAAAAQABAEACAkQBADs=[/BASE64DECODE][/SAVETOFILE]

    в итоге при парсинге этого текста картинка не скачивается.
    Что не так делаю? Или так не получится в тексте и нужно это делать только в шаблоне вывода? тогда как быть?

    R0lGODdhAQABAPAAAP///wAAACwAAAAAAQABAEACAkQBADs=
    это название картинки закодировано. или это сама картинка - файл?
     
  14. inotoxic

    inotoxic Well-Known Member Пользователи

    Регистрация:
    13 сен 2015
    Сообщения:
    867
    При декодировании
    GIF87a
     
    Vesb нравится это.
  15. Vesb

    Vesb Member Пользователи

    Регистрация:
    7 мар 2011
    Сообщения:
    50
    а тогда все правильно. Это не картинка получается? а закодирован типа формат или еще что-то?
     
  16. Vesb

    Vesb Member Пользователи

    Регистрация:
    7 мар 2011
    Сообщения:
    50
    Добрый день!

    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    В статье первая картинка нормальная, остальные указаны в base64
    Картинки скачиваю с помощью "парсинг картинок из кода сохраняемых web документов". Не отдельно. [SAVETOFILE] не подходит, как указано тут: Ссылки недоступны для гостей

    В "поиск замена загружаемого кода"
    делаю замену такую

    re:<img\ssrc="data\:image\/jpeg\;base64\,([^\"]+?)">|<img src="[BASE64DECODE]$1[/BASE64DECODE]">



    Получаю при задании границ парсинга эти картинки выглядят вот так:

    <img src="[BASE64DECODE]/9j/4QAYRXhpZgAAS.........какой-то_код.............x8/Pr6V/9k=[/BASE64DECODE]">

    Но в итоге при парсинге картинки не скачиваются. Может ли быть, что из-за того, что сначала CD пытается скачать картинки, а только потом выполняется макрос [BASE64DECODE]. Что можно сделать в этом случае?
     
    Последнее редактирование: 28 июл 2019
  17. Vesb

    Vesb Member Пользователи

    Регистрация:
    7 мар 2011
    Сообщения:
    50
    Посмотрел соседний пост с ссылкой как правильно смотреть лог. Понял, что действительно сначала СD пытается скачать изображения в таком виде <img src="[BASE64DECODE]/9j/4QAYRXhpZgAAS.........какой-то_код.............x8/Pr6V/9k=[/BASE64DECODE]"> и естественно ничего не скачивается а [BASE64DECODE] выполняется намного позже.

    Как можно сделать, чтобы выполнение [BASE64DECODE] произошло до этого?
     
  18. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    По какой причине?
     
  19. Vesb

    Vesb Member Пользователи

    Регистрация:
    7 мар 2011
    Сообщения:
    50
    Видимо потому что не совсем разобрался с этим макросом.

    У меня задача спарсить текст статьи вместе с вставленными в него картинками. то есть получить в итоге html код, где будут указанны уже переименованные картинки и они будут скачаны в папку.
    Просто я подумал, что [SAVETOFILE:555.jpeg{notcsv}{keepname}][BASE64DECODE]<CD_GRAN_2!>[/BASE64DECODE][/SAVETOFILE]
    нужно указать границу <CD_GRAN_2!> и положить ее в [BASE64DECODE] в шаблоне вывода. Но я же не работаю отдельно с границами [BASE64DECODE] поэтому не понимаю как мне тут использовать этот макрос.
    Но видимо я не до конца разобрался с макросом?
     
  20. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    За 500 рублей могу настроить.
    За 1000 с видео.
     

Поделиться этой страницей