微软必应搜索 的网页背景图片一直比较高大上,每天都会更新。正好最近做自己的 一款app 的时候苦于闪屏页不知道用什么图片,就正好直接拿过来用了。
其实很简单,只要使用抓包工具抓到 Bing 网站图片背景的接口就可以了。这里我以 Fiddler 为例。
打开 Fiddler , 再打开 必应搜索 主页,我这里分析的是国内版的域名,http://cn.bing.com,而不是 https://www.bing.com,后者是走 https 的,抓包可能存在一些问题。
看一下上面这张截图,我们很容易找到这样一条 GET 请求,显然就是请求背景图片的。拿到完整的 URL :http://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1&nc=1491812144433&pid=hp&video=1 。 Fiddler 看起来是真的累眼,可以在 PostMan 中测试一下:
这样就很明朗了。通过这样一个 GET 请求我们就可以拿到背景图片的链接地址了。看一下其中的参数:
-
format=js
,返回数据为 JSON 格式,传的 xml 则返回 xml 格式的数据 -
idx=0
,获取今日图片传 0 即可,传 1 为 昨天的图片,以此类推 -
n=1
,返回几张图片 -
nc=1491812144433
,pid=hp
,这两个参数并不知道有什么意义,删除也无影响 -
video=1
,加上这个参数会附加返回一个小视频,就像今天 Bing 的背景就是一个视频。(只有传 video=1 才会有视频返回,不要以为 video=2 就会返回两个视频...)
解析json取出 url
字段,拼接上 host 就可以得到完整的图片 url了:
http://cn.bing.com/az/hprichbg/rb/ArcticFoxSibs_ZH-CN7417451993_1920x1080.jpg
注意还有一个 urlbase
字段,是不含分辨率的,在后面拼接上你需要的分辨率就可以了。我是用作手机上的,在后面拼上 _480x800.jpg
即可。
仅支持以下几个分辨率:
1920x1208
1366x768
1024x768
480x800
如果你需要一些图片素材,也可以从这里获取。
有任何疑问,欢迎加群讨论:261386924