Я хочу извлечь заглавное изображение веб-страницы с помощью С# в ASP.NET. Я проверил окна и объекты документа, но у них нет такого свойства, как заголовок. Итак, поиск метода для извлечения изображения заголовка, как на вкладке страницы Chrome.
Как извлечь заглавное изображение веб-страницы
Ответы (2)
using (WebClient client = new WebClient())
{
Byte[] favico = client.DownloadData("http://msite.com/favico.ico");
}
Для этого используется WebClient.DownloadData
. Вы также можете использовать WebClient.DownloadFile
, если хотите сохранить его.
Еще одним пуленепробиваемым подходом может быть загрузка индексной страницы и использование парсера HTML для поиска тега <link>
, указывающего, где должна быть иконка (может также применяться к apple-touch-icon или иным образом).
Кстати, теги, которые, как мне кажется, вы хотите разобрать:
<!-- StackOverflow's implementation: -->
<link rel="shortcut icon" href="http://cdn.../favicon.ico">
<link rel="apple-touch-icon" href="http://cdn.../apple-touch-icon.png">
<!-- Google's implementation: -->
<meta content="/images/google_favicon_128.png" itemprop="image">
<!-- Facebook's implementation: -->
<link href="http://static.ak.fbcdn.net/.../q9U99v3_saj.ico" rel="shortcut icon">
<link rel="icon" href="..."/>
в документе. Путь может быть каким угодно — и не обязательно корневым.
- person Aleks G; 24.08.2012
StockOverflow
:)
- person M. Mennan Kara; 24.08.2012
В спецификациях HTML нет такого понятия, как «изображение заголовка». Значок, который вы видите на вкладке или рядом с URL-адресом в каком-либо браузере, указывается с помощью конструкции <link rel="icon"/>
:
<link type="image/x-icon" href="/images/favicon.ico" rel="icon" />
IE может потребовать от вас использовать немного другой синтаксис:
<link type="image/x-icon" href="/images/favicon.ico" rel="shortcut" />
Проанализируйте страницу и получите значение атрибута href
— это путь к значку.
Также обратите внимание, что IE версии 8 и ниже полностью игнорирует эту строку и вместо этого ищет файл favicon.ico
в корне сайта. Дополнительную информацию об IE см. в этой несколько старой статье.
aspx
? Вы программируете приложение asp.net и просто хотите получить/установить заголовок программно? Если последнее, вы должны смотреть наPage.Title
- person Icarus   schedule 24.08.2012