之前一直对必应搜索的背景图充满好奇,去年就对这个下手去做个api来用用了,可是当时制作的api有些小差错…

???

#什么差错?

当时在抓取内容的时候,发现接口返回的是国际版内容,当时也有好多人在做这个api,可是我看他们的api返回的都是国内版的内容???

似乎就我是国际版?什么情况???

?

我jio得应该是向必应发起的请求头不对,浏览器请求的是中文所以返回的是国内版,反之也成立

然后我加了报头

header('accept-language:zh-CN,zh;q=0.9');

满心欢喜以为这样就完事儿了,打开一看,只有一部分不需要的数据变成了中文,其他还是国际版内容(英文)

WDNMD

然后就弃坑了emm


这两天突然心血来潮,想把这个谜团解开,重新开坑,试了好多种办法,还是国际版内容(哭了)

去github上搜了好多爬这个的源码,发现他们展示的都是国内版的,我一下载过来丢主机上就是国际版的…

后来在服务器上搭了个代理,访问bing.com发现返回的确实是国际版必应,觉得必应可能根据ip段来判断的吧 (我国外主机…)

后来想想,算了,可能我主机比较喜欢和国际接轨,国际版就国际版!(独树一帜!!!)

#接口文档

不能完全保证接口稳定性!请勿用于严肃用途!

#国际版

接口:https://fly.atlinker.cn/api/bing/more.php返回所有数据

备用接口: https://apishub.tk/api/bing/more.php

#国内版

接口:https://fly.atlinker.cn/api/bing/cn.php返回所有数据

备用接口: https://apishub.tk/api/bing/cn.php

两个版本返回的内容有时候可能不同(看必应心情)

已更新支持HTTPS

备用接口只有主接口无法使用时才启用!!

如有接口连接问题请及时留言

数据格式:

{
    "images": [
        {
            "startdate": "20190728", 
            "fullstartdate": "201907280700", 
            "enddate": "20190729", 
            "url": "/th?id=OHR.NebraskaCarArt_EN-US3283375378_1920x1080.jpg&rf=LaDigue_1920x1080.jpg&pid=hp", 
            "urlbase": "/th?id=OHR.NebraskaCarArt_EN-US3283375378", 
            "copyright": "Carhenge, created by Jim Reinders near Alliance, Nebraska (© Charlie Summers/Minden Pictures)", 
            "copyrightlink": "https://www.bing.com/search?q=carhenge&form=hpcapt&filters=HpDate%3a%2220190728_0700%22", 
            "title": "Kitsch collides with archaeology at Carhenge", 
            "quiz": "/search?q=Bing+homepage+quiz&filters=WQOskey:%22HPQuiz_20190728_NebraskaCarArt%22&FORM=HPQUIZ", 
            "wp": false, 
            "hsh": "bd9468a81db78217711eb758046ba487", 
            "drk": 1, 
            "top": 1, 
            "bot": 1, 
            "hs": [ ]
        }
    ], 
    "tooltips": {
        "loading": "Loading...", 
        "previous": "Previous image", 
        "next": "Next image", 
        "walle": "This image is not available to download as wallpaper.", 
        "walls": "Download this image. Use of this image is restricted to wallpaper only."
    }
}

你也可以加上参数来获取copyright copyrightlink title三个值(参数对国内国际两个版本都通用)

参数 return(纯文本)
q=copyright 图片版权 https://fly.atlinker.cn/api/bing/more.php?q=copyright
q=copyrightlink 版权链接 https://fly.atlinker.cn/api/bing/more.php?q=copyrightlink
q=title 图片标题 https://fly.atlinker.cn/api/bing/more.php?q=title

因必应接口的原因,国内版可能不会抓取到title!

#输出图片

提供两种分辨率获取

1920*1080:https://fly.atlinker.cn/api/bing/1920.php

1920*1080国内版:https://fly.atlinker.cn/api/bing/1920-cn.php

1366*768:https://fly.atlinker.cn/api/bing/1366.php

1366*768国内版:https://fly.atlinker.cn/api/bing/1366-cn.php

直接

<img src="https://fly.atlinker.cn/api/bing/1366.php">

就完事儿了