自动下载 WPdb 高清壁纸

00000863_oldcarii_1280x720

00000863_oldcarii_1280x720

骆驼提出用实时 Bing 图做桌面的办法后,
有朋友回应说 Bing 图太小,
作为桌面背景而言分辨率实在太悲剧了。
而此前骆驼也曾介绍WPdb 提供各尺寸的高清壁纸。
那么是否有可能把这两者结合起来呢?
从 WPdb 自动下载高清图作为桌面背景。

要做到这点,有几个前提是必须的;
首先,WPdb 需要提供 更新功能;
第二,WPdb 需要提供无需访问的直接下载;
第三,需要能使用 作为背景的 win7

事实上,WPdb 的确已经提供了 RSS 服务。
但是在它所提供的 中,
图片仅仅是 320×200 的缩略图(thumbnail)。
而后面的条件都符合了。
因此,我们的目标便是,
修改并重新发布含高清大图的 RSS。

但是这步的工作却比我想象的要难以完成。
无论是生成或者合烧甚至过滤 RSS 都不是什么难题,
但是对现成的 RSS 进行修改及再发布,
似乎没有太多人涉及这个问题。
最终的启发是来自于月光的一个例子。

在这个案例中,
通过修改原 RSS 中的部分参数,
从而达到自定义过滤 RSS 的效果。
在这个层面,与我们的任务是相通的。

首先读取原 RSS 文件,
并逐个输出元素,
在需要修改的部分,
PHP 进行调整。
便能完成任务了。

WPdb 判断图片大小非常简单,
如“00000863_oldcarii_thumbnail.jpg”为缩略图,
那“00000863_oldcarii_1280x720.jpg”就是 720p 图,
而“00000863_oldcarii_1920x1200.jpg”就是所需的全高清图了。
因此只需将原 RSS 的“enclosure”中所附图片地址中的“thumbnail”,
用“str_replace”函数替换成“1920×1200”就万事大吉了。
(图片大小因非本地文件,
无法通过“filesize”判断,
在本例中亦无须考量。)

将制作的 php rss 发布到自己的站点,
并仿造此前 Bing 图 RSS 主题的方式,
制作使用这个 rss 的主题
双击之后,静等一分钟,
然后老泪纵横,死而无憾。

【相关资料】
1、WPdb HD RSS remix by horan
2、WPdb HD Theme by horan
3、Twitter的RSS Feed过滤工具@月光博客

4 个回应

  1. newgas 2010年05月25日 / 15:56

    哦哦!!很赞的说!!一分钟一换啊。。。能不能自己调时间的?

    • horan 2010年05月25日 / 16:03

      可以。
      桌面->右键->个性化->桌面背景->更改图片时间间隔。
      其实我说的“一分钟”是下载时间~=_=

  2. newgas 2010年05月25日 / 16:06

    Shuffle=1 是不是这个就是调整壁纸更换分钟数啊?

    RssFeed=http://www.horans.cn/tool/wpdb_hd.php 这个。。。。要是你的网站倒了。。就没有自动更新了?

    另外怎么能让系统自动储存所换的壁纸呢?

    • horan 2010年05月25日 / 23:37

      “shuffle=1”表示乱序显示吧,和 MP3 播放器一样。
      是的,你就全心祈祷俺的站不要倒吧!

  3. 骑士风范 2010年10月15日 / 00:26

    谢谢楼主好人啊!这个太有意思了!

骑士风范进行回复 取消回复

邮箱地址不会被公开。 必填项已用*标注