Bing 搜索引擎每天都会更新一张精美的首页背景图片,这些图片来自全球各地的摄影师和艺术家之手,涵盖自然风光、人文建筑、动物趣闻等丰富题材。很多站长都希望将自己网站的背景也换成 Bing 的每日一图——既省去了自己找素材的功夫,又能让网站每天都有新鲜感。这篇文章我会分享如何实现,同时也介绍一些宝藏级的 Bing 壁纸历史归档网站。

一、Bing 壁纸 URL 参数解析

要接入 Bing 壁纸,先得明白 Bing 官方图片地址的结构。下面是一个 Bing 壁纸请求链接:

https://cn.bing.com/th?id=OHR.MayLaborDayY26_ZH-CN7554485395_UHD.jpg&rf=LaDigue_UHD.jpg&pid=hp&w=3840&h=2160&rs=1&c=4

https://cn.bing.com/th?id=OHR.MayLaborDayY26_ZH-CN7554485395_UHD.jpg&rf=LaDigue_UHD.jpg&pid=hp&w=3840&h=2160&rs=1&c=4

th:即 "thumbnail"(缩略图)的缩写,表示这是一个图片资源请求。

id:图片的唯一标识符,整体结构为 OHR.图片名称_区域_随机串_分辨率.jpg,其中 OHR 代表 "One Happy Reminder",是 Bing 壁纸系列的固定前缀;ZH-CN 表示区域为中国(简体中文);末尾的 UHD.jpg 表示超高清图片。正是这个 id 参数,配合上 Bing 的不同存储节点,共同构成了Bing图片域名的直链。

rf:即 "Referer"(引用来源)的缩写,通常是一个备用文件名,LaDigue_UHD.jpg 就是这张图片在 Bing 服务器上的另一个名称标识。

pid:即 "Product ID"(产品标识),表示这次请求的来源场景,hp 代表这是从 Bing 首页(HomePage)发起的。

wh:分别代表宽度(Width)和高度(Height),单位是像素。这里 w=3840h=2160 正是 4K 超高清分辨率。

rs:即 "Resizing Strategy"(缩放策略),rs=1 表示在调整图片大小时按照一定的优先级进行处理。

c:即 "Cropping"(裁剪模式)。c=4 代表 Blind Ratio(盲切),即按图片中心进行比例裁剪;c=7 则代表 Smart Ratio(智能裁剪),Bing 会根据画面中识别到的主体内容进行智能裁剪。如果 Bing 无法确定图片的关注区域,就会回退到 Blind Ratio 模式。

微软官方也提供了调优指南:如果你只想调整缩略图的大小,建议只保留 idpid 两个参数,然后只添加 wh 其中之一,Bing 会自动保持图片的原始宽高比。

二、Bing 历史壁纸网站

如果你需要查找过往的 Bing 壁纸,或者希望嵌入特定的壁纸,下面这几个网站比较实用。

1. bing.wdbyte.com

bing.wdbyte.com 是一个保持了极简的 Bing 壁纸归档站。它每天都会同步抓取必应当天的壁纸,界面非常干净,零广告,不收费,最早可以回溯到 2023 年 2 月的历史壁纸。 站点导航清晰,可以按月浏览历史壁纸,也支持不同分辨率的下载,对于想一边欣赏历年壁纸一边从中挑选素材的站长来说非常方便。

2. bing.img.run

bing.img.run 是一个纯手工更新收录的 Bing 壁纸库,不仅收录了 UHD 超高清原图,还有 1920×1080 的高清壁纸、1366×768 的普清壁纸以及 1080×1920 的竖版手机壁纸等多种规格。 它还提供了开放的 API 接口,支持直接以图片链接的形式调用。

今日壁纸接口

<!-- 4K 超高清原图 -->
<img src="https://bing.img.run/uhd.php">

<!-- 1080P 高清 -->
<img src="https://bing.img.run/1920x1080.php">

<!-- 手机竖版 1080×1920 -->
<img src="https://bing.img.run/m.php">

随机历史壁纸接口(收录范围从 2020 年 9 月至今):

<!-- 随机 4K 超高清原图 -->
<img src="https://bing.img.run/rand_uhd.php">

<!-- 随机 1080P 高清 -->
<img src="https://bing.img.run/rand.php">

3. 更多值得关注的 Bing 壁纸资源

如果你想进一步扩展素材库,下面这几个站点也值得去看看:

  • wallpaperhub.app:除了 Bing 每日壁纸外,还收录了大量微软系壁纸,风格多样。
  • DailyWallpaperHub:一个基于 GitHub 免费资源构建的开源项目,自动聚合 Bing 与 Unsplash 的每日精选壁纸,每张图片还会生成约 500 字的 AI 地理文化故事。

无论是想翻看某年某月某日出现的特定壁纸,还是想获取一个现成的图片链接直接嵌入网站,这些工具都能大大降低访问和获取Bing海量精美壁纸的门槛。

三、将 Bing 壁纸集成到你的网站背景

拿到图片 URL 之后,如何让它真正成为网站背景呢?这里有几种方案,按复杂度从低到高排序。

方案一:直接使用第三方 API(最简单)

如果你追求最简单直接的方案,可以用上面提到的现成 API:

body {
    background-image: url('https://bing.img.run/uhd.php');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

每次用户访问网站时都会加载最新的 Bing 壁纸,无需任何后端代码。

方案二:通过 PHP 重定向获取官方图片

如果你希望直接从 Bing 官方获取,可以使用一段极简的 PHP 代码:

<?php
$api_url = 'https://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1';
$json = file_get_contents($api_url);
$data = json_decode($json, true);
$image_url = 'https://cn.bing.com' . $data['images'][0]['url'];
header("Location: $image_url");
?>

将这段代码保存为 bing.php,然后在网站背景中直接引用 /bing.php 即可。

方案三:使用官方 API 获取元数据

对于有更多定制需求的用户,可以直接调用 Bing 官方的图片归档接口:

https://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1&mkt=zh-CN

返回的 JSON 数据中包含了壁纸的 URL、版权信息、标题故事等内容:

{
  "images": [
    {
      "startdate": "20260501",
      "fullstartdate": "202605011600",
      "enddate": "20260502",
      "url": "/th?id=OHR.GreenJasper_ZH-CN3030401138_1920x1080.jpg&rf=LaDigue_1920x1080.jpg&pid=hp",
      "urlbase": "/th?id=OHR.GreenJasper_ZH-CN3030401138",
      "copyright": "阿尔伯塔省贾斯珀国家公园中的小型湖泊与湿地,加拿大 (© Don White/Getty Images)",
      "copyrightlink": "https://www.bing.com/search?q=%E9%98%BF%E5%B0%94%E4%BC%AF%E5%A1%94%E7%9C%81%E8%B4%BE%E6%96%AF%E7%8F%80%E5%9B%BD%E5%AE%B6%E5%85%AC%E5%9B%AD&form=hpcapt&mkt=zh-cn",
      "title": "贾斯珀的自然魅力",
      "quiz": "/search?q=Bing+homepage+quiz&filters=WQOskey:%22HPQuiz_20260501_GreenJasper%22&FORM=HPQUIZ",
      "wp": true,
      "hsh": "5f4e193dc4f1e0ca4ebb8e153d0f05cf",
      "drk": 1,
      "top": 1,
      "bot": 1,
      "hs": []
    }
  ],
  "tooltips": {
    "loading": "正在加载...",
    "previous": "上一个图像",
    "next": "下一个图像",
    "walle": "此图片不能下载用作壁纸。",
    "walls": "下载今日美图。仅限用作桌面壁纸。"
  }
}

关键参数说明: - idx:图片索引。idx=0 为当天,idx=1 为前一天,以此类推,最多可以追溯到 16 天前的图片。 - n:返回图片数量,1-8 张。 - mkt:市场区域,zh-CN 为中国区。

你可以结合前端 JavaScript 定时请求这个接口,实现背景图片的动态轮换,还可以把壁纸的版权信息展示在页面角落。

本站的实现方法

预置多张 Bing 4K 壁纸 URL,每次访问随机选取一张,既保证视觉新鲜感,又避免了第三方 API 的不可控因素。

// 预置的高清 Bing 壁纸列表(均为 4K UHD 直链)
const BACKGROUND_IMAGE_URLS = [
    'https://cn.bing.com/th?id=OHR.MayLaborDayY26_ZH-CN7554485395_UHD.jpg&pid=hp',
    'https://cn.bing.com/th?id=OHR.OloupenaFalls_ZH-CN2980118660_UHD.jpg&pid=hp',
    'https://cn.bing.com/th?id=OHR.LoganCreek_ZH-CN5372283365_UHD.jpg&pid=hp',
    'https://cn.bing.com/th?id=OHR.PeggysLighthouse_ZH-CN5730463973_UHD.jpg&pid=hp',
    'https://cn.bing.com/th?id=OHR.MendenhallCave_ZH-CN1850649760_UHD.jpg&pid=hp',
    'https://cn.bing.com/th?id=OHR.FanetteIsland_ZH-CN6466809551_UHD.jpg&pid=hp'
];

function applyRandomBackgroundImage() {
    const randomIndex = Math.floor(Math.random() * BACKGROUND_IMAGE_URLS.length);
    const imageUrl = BACKGROUND_IMAGE_URLS[randomIndex];
    document.body.style.backgroundImage = `url('${imageUrl}')`;
}