javascript
  • jquery
  • html
  • asp.net
  • favicon
  • 2013-06-20 153 views 0 likes 
    0

    我想從網站的網址提取圖標。我正在使用HtmlAgilityPack。我收到一些圖標,但不是全部。我認爲問題在於實施方面的差異。礦目前的策略是..從網站提取圖標

     HtmlNode imageNode = head.SelectSingleNode("//link[@rel='shortcut icon' or @rel='apple-touch-icon' or @rel='icon' or @rel='apple-touch-icon-precomposed'] | //link[@type='image/png' or @type='image/gif' or @type='image/vnd.microsoft.icon']"); 
    
         imageNode = head.SelectSingleNode("link[@rel='image_src']"); 
    

    和開放的圖形方法

      private LinkDetails GetOpenGraphInfo(LinkDetails linkDetails, HtmlNode head) 
    { 
        foreach (HtmlNode headNode in head.ChildNodes) 
        { 
         switch (headNode.Name.ToLower()) 
         { 
          case "link": break; 
    
          case "meta": 
           if (headNode.Attributes["property"] != null && headNode.Attributes["content"] != null) 
           { 
            switch (headNode.Attributes["property"].Value.ToLower()) 
            { 
             case "og:title": 
              linkDetails.Title = HttpUtility.HtmlDecode(headNode.Attributes["content"].Value); 
              break; 
             case "og:type": 
              linkDetails.Type = headNode.Attributes["content"].Value; 
              break; 
             case "og:url": 
              linkDetails.Url = headNode.Attributes["content"].Value; 
              break; 
             case "og:image": 
              linkDetails.Image = new ImageLink(headNode.Attributes["content"].Value, linkDetails.Url); 
              break; 
             case "og:site_name": 
              linkDetails.SiteName = HttpUtility.HtmlDecode(headNode.Attributes["content"].Value); 
              break; 
             case "og:description": 
              linkDetails.Description = HttpUtility.HtmlDecode(headNode.Attributes["content"].Value); 
              break; 
             case "og:email": 
              linkDetails.Email = HttpUtility.HtmlDecode(headNode.Attributes["content"].Value); 
              break; 
             case "og:phone_number": 
              linkDetails.PhoneNumber = HttpUtility.HtmlDecode(headNode.Attributes["content"].Value); 
              break; 
             case "og:fax_number": 
              linkDetails.FaxNumber = HttpUtility.HtmlDecode(headNode.Attributes["content"].Value); 
              break; 
    
            } 
           } 
           break; 
         } 
    
        } 
        return linkDetails; 
    } 
    

    但還是我缺少一些網站圖示。所以我需要知道如何編碼的圖標。

    +0

    我不明白這一點。你爲什麼需要這些圖標? –

    +1

    這是另一個問題..說我需要他們的書籤... –

    回答

    0
    <link rel="icon" type="image/png" href="http://yourblog.com/favicon.png" /> 
    

    <link rel="shortcut icon" href="http://example.com/favicon.ico" type="image/x-icon" /> 
    

    實際上,添加圖標正確的方法是通過一個插件,使得添加圖標不是主題相關的。

    此外,您可能會缺少一些文件類型。

    +0

    對不起,你不明白的問題..我想提取我正在瀏覽的其他網站的favicon .. –

    +0

    這就是爲什麼我告訴你的方式在其中favicon被放入一個網站。爲什麼不提取Web網址以及favicon,以便您可以從哪個url中看到favicon不會被提取。然後看到這些網址中的方法 –

    +0

    是的,我正在那樣做,但仍然無能爲力...就像檢查這個網站,並告訴我他們是如何做到這一點..我無法找到他們是如何做到這一點.. http:// www .bhvr.com/en/ –

    2

    轉到下面的鏈接下載網站的圖標。

    打開鏈接,然後點擊保存爲圖片進行下載。

    http://www.google.com/s2/favicons?domain=codegena.com

    更換codegena.com與您要下載的圖標的域名。

    相關問題