获取微软必应(Bing)搜索网页背景图片

微软必应搜索 的网页背景图片一直比较高大上,每天都会更新。正好最近做自己的 一款app 的时候苦于闪屏页不知道用什么图片,就正好直接拿过来用了。

其实很简单,只要使用抓包工具抓到 Bing 网站图片背景的接口就可以了。这里我以 Fiddler 为例。

打开 Fiddler , 再打开 必应搜索 主页,我这里分析的是国内版的域名,http://cn.bing.com,而不是 https://www.bing.com,后者是走 https 的,抓包可能存在一些问题。

获取微软必应(Bing)搜索网页背景图片_第1张图片
Fiddler

看一下上面这张截图,我们很容易找到这样一条 GET 请求,显然就是请求背景图片的。拿到完整的 URL :http://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1&nc=1491812144433&pid=hp&video=1 。 Fiddler 看起来是真的累眼,可以在 PostMan 中测试一下:

获取微软必应(Bing)搜索网页背景图片_第2张图片

这样就很明朗了。通过这样一个 GET 请求我们就可以拿到背景图片的链接地址了。看一下其中的参数:

  • format=js ,返回数据为 JSON 格式,传的 xml 则返回 xml 格式的数据
  • idx=0 ,获取今日图片传 0 即可,传 1 为 昨天的图片,以此类推
  • n=1 ,返回几张图片
  • nc=1491812144433pid=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

项目地址: https://github.com/lulululbj/Everything

你可能感兴趣的:(获取微软必应(Bing)搜索网页背景图片)