Задать вопрос
@razumovsu
Интересуюсь web-разработкой, IT-технологиями

Можно ли узнать размер файла, его тип, не скачивая целиком?

Можно ли, используя curl, узнать размер файла по ссылке(и прочую инфу) не скачивая файл целиком на сервер? Есть ли технически такая возможность. Спасибо
  • Вопрос задан
  • 2899 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 1
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
если сервер отдаёт эту инфу то да, а если на отдаёт то нет.

Зависит от того кто раздаёт файлы короче.

Ну а инфа в заголовках соответственно.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
BuriK666
@BuriK666
Компьютерный псих
Ответ написан
Комментировать
@askhat
Конечно, первые несколько байт файла уникальны для каждого типа, по ним можно вычислить тип. Благодаря этому свойству работает например библиотека libmagic.

https://gist.github.com/leommoore/f9e57ba2aa4bf197ebc5
Ответ написан
Комментировать
vman
@vman
как вариант
curl -m 1 -sS -D - -X HEAD https://hsto.org/r/w120/webt/5a/80/fd/5a80fd8c368f0954751429.png 2>/dev/null | grep -Po '(?<=Content-Length: )(\d+)|((?<=Content-Type: )[a-z\-]+/[a-z\-]+)'

image/png
12597

HEAD не сработает если целевой сервер отдает редирект. Для такой задачи лучше реализовать небольшой скрипт или приложение.
Ответ написан
mlatushko
@mlatushko
wget --spider URL

Wget for Windows ( gnuwin32.sourceforge.net/packages/wget.htm )
Wget и cURL есть в составе файлов программы для скачивания AWGG ( https://videohelp.com/software/AWGG ) пятью различными механизмами/"движками" (Windows).
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы