收藏本页 | 设为主页 | RSS
LOGO

我就上乐乐吧

Bing搜索的首页每天都会推送一张很漂亮的图片,有大神就想把它保存下来,然后把它当做电脑桌面或是网站背景图。那么动手的第一步,肯定是要弄清这张图是从何...

您当前的位置:首页 » 技术杂萃
全站公告
重要提示!

本站收集各类美图,以无LOGO原汁原味图为主!欢迎大家交流。
怕失联,请认准如下地址:
微博:传送门
土豆:传送门
电报:传送门
微信:superimagelove
花瓣:传送门
Q群1:231151757
Q群2:583138281
文件解压密码:593668.com
热心赞助

站内搜索
 
相关文章
热门文章
热搜词组
文章归档
友情链接
使用PHP抓取Bing每日图像

发布日期:2019-11-23  关键词: PHP

Bing搜索的首页每天都会推送一张很漂亮图片,有大神就想把它保存下来,然后把它当做电脑桌面或是网站背景图。那么动手的第一步,肯定是要弄清这张图是从何而来的。

经过对必应首页的分析,差不多就可以获得首页图的获取URL。它的格式是类似于这样的:

传送门p;idx=0&n=1

注意,这里有几个GET参数,经过测试发现作用如下:

n,必要参数,这是输出图片的数量,至多输出8条。
forMAT,非必要。返回结果的格式,默认输出为xml格式,等于js时,输出json格式
idx,非必要。默认输出当天的图片,-1为已经预备用于明天显示的信息,1则为昨天的图片,以此类推,idx最多获取到前16天的图片信息。

这里将n设定为1、format设定为js、idx设定为1,去发出GET请求,返回的数据是这样的:

使用PHP抓取Bing每日图像,PHP,技术杂萃


其中的“images”节点下的“url”值便是要获取的图像地址了。把它取出来,再加上Bing的网址前缀(传送门),并加以调整,即组合成了完整的图像地址。比如说上面返回数据的完整图像地址是这样的:
传送门ouds_ZH-CN0002027700_1920x1080.jpg

知道了背景图的获取方式,接下来就是用PHP去动态抓取了,代码如下。

$obj=JSON_DECODE(file_get_contents('传送门p;n=1&format=js'),true);// 从bing获取数据
if(!empty($obj)) { // 正则匹配抓取图片url
    $imgurl = '传送门'.substr($obj['images'][0]['url'],0,strpos($obj['images'][0]['url'],"&"));
}
echo $imgurl;

接下来,就看各位老铁自己的发挥了,能帮的也只能到这里了。
猜您喜欢:
Q群: 231151757微信:superimagelove 官网:www.593668.com