asp.net: после удаления изображений с удаленного сайта, как показать только большие изображения? - PullRequest
0 голосов
/ 22 ноября 2010

Мне нужна помощь в выполнении следующих задач:

В моем веб-приложении пользователи должны иметь возможность отправлять продукты, включая изображения продуктов, с определенного сайта продуктов.Они делают это, сначала вводя URL продукта, за исключением.www.amazon.com/product1 ... То, что я хочу сделать, - это дать пользователю простой способ выбрать изображение продукта, показав ему несколько изображений из URL продукта, которые могут быть правильным изображением продукта.До сих пор мне удалось очистить все imageurls от URL продукта (используя класс webclient и «Html Agility Pack»), но тогда показываются ВСЕ изображения с этого сайта продукта… (который обычно включает в себя множество маленьких изображений).Но я только хочу показать пользователю НЕКОТОРЫЕ изображения, которые могут быть изображением продукта (а затем он выбирает правильное).Единственный способ, которым я могу придумать, чтобы сузить количество возможных изображений товара, - это его размер или ширина / высота, правильное изображение товара обычно представляет собой большую картину.(Или у кого-то есть лучший способ определить возможные изображения продукта с сайта продукта?).

О, это было много объяснений, вот мой актуальный вопрос:

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

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

Большое спасибо за ответы

Ответы [ 3 ]

0 голосов
/ 23 ноября 2010

Атрибут src изображений, которые вы найдете на этом сайте продукта, может помочь вам в этом. То есть эти изображения могут иметь название продукта или его идентификатор в URL-адресе или быть из другой "папки" / пути, которая будет указывать вам, что они отличаются.

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

0 голосов
/ 28 марта 2012

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

0 голосов
/ 22 ноября 2010

Вы не можете сделать это без получения самих изображений.Любые возможные атрибуты width / height или правила стиля CSS не представляют фактические размеры самих изображений, поскольку они определяют ограничения, при которых отображается изображение, которое может иметь другой размер.

На самом деле есть два способа сделать это:

  1. Попробуйте идентифицировать определенный элемент в HTML, который представляет большое изображение, и извлечь изображение, отображаемое там.например, <div class="bigImage"><img src="..." /></div>.Не отлично.

  2. Загрузите все изображения и определите их размер.Из всех возможных изображений на веб-сайте (включая логотипы, кнопки, рекламные объявления и т. Д.), Как вы узнаете, какие изображения продукта?гарантированное решение ...

...