Парсер контента с Reddit

twisterrr

Client
Регистрация
25.12.2011
Сообщения
287
Благодарностей
24
Баллы
18
не получается парсить фото с редит, там какая то защита, ссылка на фото открывается как страница в браузере, понять не могу как ее сохраните, подскажите плз
вот например https://i.redd.it/atrp9a50v6sg1.jpeg GET запросом сохраняет файл в виде html страницы, а не фото
 
Последнее редактирование:

404

Client
Регистрация
23.09.2011
Сообщения
132
Благодарностей
76
Баллы
28

BAZAg

Client
Регистрация
08.11.2015
Сообщения
1 914
Благодарностей
2 664
Баллы
113
не получается парсить фото с редит, там какая то защита, ссылка на фото открывается как страница в браузере, понять не могу как ее сохраните, подскажите плз
вот например https://i.redd.it/atrp9a50v6sg1.jpeg GET запросом сохраняет файл в виде html страницы, а не фото
C#:
return ZennoPoster.HttpGet("https://i.redd.it/atrp9a50v6sg1.jpeg", "","",ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.File,AdditionalHeaders: new[]{
    "accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8" // заголовок нужен
});
// file:///C:/Users/User/AppData/Local/Temp/atrp9a50v6sg1(2).jpeg
Да вроде совсем без проблем качается, просто заголовок accept должен указывать что ждем картинку...
1775655909146.png
 
  • Спасибо
Реакции: twisterrr

twisterrr

Client
Регистрация
25.12.2011
Сообщения
287
Благодарностей
24
Баллы
18
Да вроде совсем без проблем качается, просто заголовок accept должен указывать что ждем картинку...
точно, именно в этом и была загвоздка, отдает фото только с заголовком.. спасибо :bu:
 
  • Спасибо
Реакции: BAZAg

twisterrr

Client
Регистрация
25.12.2011
Сообщения
287
Благодарностей
24
Баллы
18

404

Client
Регистрация
23.09.2011
Сообщения
132
Благодарностей
76
Баллы
28
если можно пример как использовать ffmpeg для этой задачи
ffmpeg -i "url" -map_metadata -1 -c:v mjpeg -y "output.jpg"

-i "url": ссылка на изображение
-map_metadata -1: полностью удаляет EXIF и прочие метаданные
-c:v mjpeg: видеокодек (для фото это mjpeg)
-y: автоматически перезаписывать файл output.jpg, если он уже существует

ffmpeg может сжать файл сильнее, чем нужно. Чтобы сохранить качество, можно добавить флаг -q:v (значения от 2 до 5 обычно оптимальны, где 2 - лучшее качество):
ffmpeg -i "URL" -map_metadata -1 -c:v mjpeg -q:v 2 "output.jpg"
 

Кто просматривает тему: (Всего: 2, Пользователи: 1, Гости: 1)