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

twisterrr

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

404

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

BAZAg

Client
Регистрация
08.11.2015
Сообщения
1 914
Благодарностей
2 665
Баллы
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
 
  • Спасибо
Реакции: Dmitriy_Zenno и twisterrr

twisterrr

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

twisterrr

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

404

Client
Регистрация
23.09.2011
Сообщения
132
Благодарностей
77
Баллы
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"
 
  • Спасибо
Реакции: twisterrr

cooki

Client
Регистрация
05.10.2014
Сообщения
299
Благодарностей
70
Баллы
28
изображение_2026-04-09_031510905.png

а почему так бывает?
 

twisterrr

Client
Регистрация
25.12.2011
Сообщения
288
Благодарностей
24
Баллы
18
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"
спасибо, пригодится :ay:
 

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