使用Google Favicon Service无法获取GitHub站点favicon问题咨询
Google Favicon服务无法获取GitHub站点图标可能的原因
- GitHub反爬策略拦截:GitHub针对无明确业务身份、高频抓取的公共服务爬虫做了访问限制,Google Favicon服务的默认爬虫UA未进入GitHub白名单,请求GitHub根域favicon资源时会被返回403状态码或重定向到错误页,导致Google服务只能 fallback 到默认图标。
- 服务缓存失效:Google Favicon服务对已抓取的站点favicon设置了长达数周甚至数月的缓存周期,如果此前Google侧首次抓取GitHub图标时就失败、或是GitHub更新过favicon存储路径后未触发Google侧缓存更新,缓存的默认失效资源会一直被返回。
- 跳转逻辑适配缺陷:GitHub的根域favicon存在多轮3xx重定向,且资源访问有来源合法性校验要求,Google Favicon服务的爬虫未适配这类多步跳转、带访问校验的资源抓取逻辑,无法拉取到真实的favicon文件。
- 旧版接口参数适配问题:你使用的旧版Google Favicon接口仅传
domain参数的请求逻辑已被Google做了降级处理,部分高流量站点的资源匹配需要补充sz(尺寸)参数才能正常触发抓取,仅传domain的请求会优先返回兜底的默认图标。
内容的提问来源于stack exchange,提问作者Rabbitrun
相关产品推荐
相关产品推荐

