Any way to grab a logo icon from website URL, programmatically?

Use this website:

https://besticon-demo.herokuapp.com/allicons.json?url=www.stackoverflow.com

It will find all logos for a website in multiple sizes and return a nice json string with meta data including the url to the icon. You simply replace www.stackoverflow.com with your domain.

The site also has a gui for entering in websites manually if you prefer:

https://besticon-demo.herokuapp.com/

Here is a sample string returned from querying for the stack overflow website:

{
   "url":"www.stackoverflow.com",
   "icons":[
      {
         "url":"http://stackoverflow.com/apple-touch-icon.png",
         "width":158,
         "height":158,
         "format":"png",
         "bytes":3445,
         "error":null,
         "sha1sum":"c78bd457575a3221c6b3d0d17ffb00ffc63d7cd0"
      },
      {
         "url":"http://cdn.sstatic.net/Sites/stackoverflow/img/favicon.ico?v=4f32ecc8f43d",
         "width":32,
         "height":32,
         "format":"ico",
         "bytes":5430,
         "error":null,
         "sha1sum":"4f32ecc8f43d0986b9c6ce9f37999e86c0b829ef"
      },
      {
         "url":"http://stackoverflow.com/favicon.ico",
         "width":32,
         "height":32,
         "format":"ico",
         "bytes":5430,
         "error":null,
         "sha1sum":"4f32ecc8f43d0986b9c6ce9f37999e86c0b829ef"
      }
   ]
}

It's called a favicon, and all you have to do is:

  1. If there's an icon at /favicon.ico, use that.
  2. Otherwise, get the content of the page, and extract the location from <link rel="shortcut icon" href="URL goes here" />. You’ll need to use an HTML parser and find the <link> with a rel of either icon or shortcut icon.

I know I am late but this API will help others

Android doesn't support favicon files. You can fetch favicon but can't show/use it.

But Google provides free API to get favicon in image format.

https://www.google.com/s2/favicons?sz=64&domain_url=microsoft.com

Use Picasso to show icon in imageview.


Use this logo.clearbit.com/stackoverflow.com

You can even customize to get particular size and grascaled version

logo.clearbit.com/stackoverflow.com?size=80&greyscale=true