让代码更简单

必应高清壁纸接口更新

重要:本文最后更新于2020-07-04 08:27:24,某些文章具有时效性,若有错误或已失效,请在下方留言或联系代码狗

必应壁纸好像很多人喜欢,实在是GET不到你们的点。不过既然有人喜欢,那就有必要写个教程。本文将告诉你如何使用PHP获取必应每日壁纸,并写成PHP接口文件,提供给别人使用,当然是最简单的接口,懒得写,没啥用。

必应壁纸请求API

请求方法:GET

请求地址:http://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1

我也不知道这个地址哪儿来的,网上一搜一大片,不深究了,测试了下完全OK,能正常使用。

请求上面的地址后,会返回一段json数据,如下所示:

复制
{
"images": [{
"startdate": "20200702",
"fullstartdate": "202007021600",
"enddate": "20200703",
"url": "/th?id=OHR.DogDays_ZH-CN8013834742_1920x1080.jpg&rf=LaDigue_1920x1080.jpg&pid=hp",
"urlbase": "/th?id=OHR.DogDays_ZH-CN8013834742",
"copyright": "卡拉哈里沙漠中的南非狐,南非 (© NSP-RF/Alamy)",
"copyrightlink": "https://www.bing.com/search?q=%E5%8D%97%E9%9D%9E%E7%8B%90&form=hpcapt&mkt=zh-cn",
"title": "",
"quiz": "/search?q=Bing+homepage+quiz&filters=WQOskey:%22HPQuiz_20200702_DogDays%22&FORM=HPQUIZ",
"wp": true,
"hsh": "d74b39fe8bbfdfecd7965b10eea07639",
"drk": 1,
"top": 1,
"bot": 1,
"hs": []
}],
"tooltips": {
"loading": "正在加载...",
"previous": "上一个图像",
"next": "下一个图像",
"walle": "此图片不能下载用作壁纸。",
"walls": "下载今日美图。仅限用作桌面壁纸。"
}
}

这是一个json对象,里面装了个images数组,数组中又装的json对象。重要的数据有两个,看自己需求选择,url的值就是必应每天用的地址,urlbase的值是图片名,可以拼接不同分辨率的图片,我这里用urlbase。

简单的PHP接口

新建一个文本文件,复制如下内容,保存为1920.php文件即可,访问此文件将会返回当日必应壁纸。

复制
<?php
$str = file_get_contents('http://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1');
$array = json_decode($str);
$imgurl = 'https://cn.bing.com'.$array->{"images"}[0]->{"urlbase"}.'_1920x1080.jpg';
if($imgurl){
header('Content-Type: image/JPEG');
@ob_end_clean();
@readfile($imgurl);
@flush(); @ob_flush();
exit();
}else{
exit('error');
}
?>

好像有些接口失效了,主要是图像地址域名变成了cn.bing.com。检查方法是,去必应首页,右键查看下官方的壁纸域名用的什么。

感觉很棒!可以赞赏支持我哟~

0 打赏

评论 (2)

登录后评论
能用。另外有没有更高分辨率的啊,这个才1080啊
又水了一篇……
QQ咨询 邮件咨询 狗哥推荐