一般状况下,作网站的都会给本身的网站添加一个Icon,浏览器上一长排的标签页,用Icon来区分就显得更加醒目。如今想找一个没有Icon的网站并很差找,可见没有Icon的网站是多么的业余啊。"什么?你问Icon是什么?你走吧,这是讨论技术的地方!"php
想知道如何获取Icon,就要弄明白怎样设置Icon。先讨论一下设置Icon,再介绍获取Icon,并提供相应Java代码以供参考。html
一. 设置网站Iconweb
设置Icon有两种方式:api
1. 看一下咱们专业的博客园,看到灰色部分了吗,在head标签中有个link标签,将rel设置为"shortcut icon",href 设置为Icon的位置,type设置成实际图标类型就OK了。这个Icon文件不是必须以favicon.ico命名,也能够选择png等其余格式的图片。浏览器
2. 若是用第一种方式,每一个页面都要写link,是否是挺麻烦的,可能会用模板之类的东西自动生成,这个我不懂啦。若是浏览器发现html中没有写明Icon位置,就自动到网站根目录下尝试读取favicon.ico文件。再看一下咱们专业的博客园,看到了吗,Icon显示出来了。注意:根目录下的文件就必须以favicon.ico命名了。考虑到浏览器兼容性,大部分的网站除了在html中指定Icon的位置,同时也会在网站根目录下存放Icon文件。dom
二. 获取网站Icon网站
知道怎么设置Icon,获取Icon就很简单了。解析html相对来讲比较麻烦,能够直接到网站根目录下尝试读取favicon.ico。若是没有,再解析html(话说我试了不少经常使用网站,均可以从根目录下读取,想找个根目录下不存放Icon的网站还真不容易,这时我想到了12306,试了一下果真没有啊,事情并无想象的那么简单,12306会奇葩到你想不到,后边再说)。思路就是这样,很简单,可是在实现的过程当中会有不少细节问题。编码
1.域名 +favicon.ico 一般能知足url
2.域名 +目录 +favicon.ico 大部分也能知足.net
3.经过api获取
4.实在没有返回一个默认的
给你们分享api
http://tool.bitefu.net/ico/?url=https://www.baidu.com
http://tool.bitefu.net/ico/?url=https://www.baidu.com&type=1 [直接返回base64编码的图片信息]
源码下载:http://www.90pan.com/b1458386
再分享给你们几个api 都很是好用.
http://api.byi.pw/favicon/?url=
http://cdn.website.h.qhimg.com/index.php?domain=