1

Тема: AHK: Получение ширины-высоты изображения перед скачиванием

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

2

Re: AHK: Получение ширины-высоты изображения перед скачиванием

Вообще нет, но что вы имеете в виду под «загрузкой»?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3

Re: AHK: Получение ширины-высоты изображения перед скачиванием

Можно скачать только хедер изображения и из него достать размеры.

4

Re: AHK: Получение ширины-высоты изображения перед скачиванием

А они там всегда есть?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

5

Re: AHK: Получение ширины-высоты изображения перед скачиванием

По спецификации должны быть.

Xdensity 2 Horizontal pixel density. Must not be zero
Ydensity 2 Vertical pixel density. Must not be zero

https://en.wikipedia.org/wiki/JPEG_File … nge_Format

6

Re: AHK: Получение ширины-высоты изображения перед скачиванием

А, я думал, ты говоришь о заголовках веб-запроса. Так-то придётся спецификации всех типов изображений разбирать.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

7

Re: AHK: Получение ширины-высоты изображения перед скачиванием

teadrinker пишет:

А, я думал, ты говоришь о заголовках веб-запроса.

А разве такие есть заголовки?

8

Re: AHK: Получение ширины-высоты изображения перед скачиванием

В смысле, спрашиваешь, существуют ли у веб-запроса заголовки?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

9 (изменено: Malcev, 2023-02-16 18:37:46)

Re: AHK: Получение ширины-высоты изображения перед скачиванием

Ну да.
Хотя вроде может и можно где-то width (deprecated) получить, но я такого не встречал.
https://developer.mozilla.org/en-US/doc … ders/Width

10

Re: AHK: Получение ширины-высоты изображения перед скачиванием

Если ты спрашиваешь, есть ли в заголовках размеры, то я не в курсе, поэтому и уточнил вначале. В любом случае, чтобы они там были, их должен кто-то туда намеренно поместить.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

11

Re: AHK: Получение ширины-высоты изображения перед скачиванием

Поэтому, единственно верный способ, скачивать хедер файла и парсить.
Обычно требуется пару конкретных расширений.
Сам когда-то подобные заказы лепил.

12

Re: AHK: Получение ширины-высоты изображения перед скачиванием

Наверно. Но такие ухищрения могут потребоваться, как я представляю, в случае, если нужно скачать много изображений, либо выбрать нужные из большого количества. Не уверен, что здесь тот случай.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

13

Re: AHK: Получение ширины-высоты изображения перед скачиванием

Под «загрузкой» имелось в виду скачивание. Планировалось узнавать размеры и пропускать мелкие изображения.

Хедеры пробовал, там вроде нет инфы о разрешении:

HTTP := ComObjCreate("WinHTTP.WinHTTPRequest.5.1")

HTTP.Open("GET", "https://sun7-8.userapi.com/s/v1/ig2/rNfXvTrnO4MpfrjkdUnXW6uu2FJ8EaMyiMcK4D0kiCV4x0_LF3DeGk5ahewM4vlfda0neMUuz4AoohTYahbeTOoU.jpg?size=50x50&quality=95&crop=0,0,1079,1079&ava=1", 1)
HTTP.SetRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36")
HTTP.Send()

HTTP.WaitForResponse()
ResponseHeaders := HTTP.getAllResponseHeaders()
MsgBox % ResponseHeaders

14

Re: AHK: Получение ширины-высоты изображения перед скачиванием

Так у вас в адресе размер указан: 50x50.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

15

Re: AHK: Получение ширины-высоты изображения перед скачиванием

Только на этом сайте так.

16

Re: AHK: Получение ширины-высоты изображения перед скачиванием

Если файлы небольшие и их немного, то проще скачивать целиком и узнавать размеры через WinApi. В ином случае можно скачивать частично, только заголовок. Нужно будет узнать размер заголовка/заголовков требуемых форматов изображений.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder