Mac 每天自动下载 Bing 壁纸

作者: 每天一道编程题 | 来源:发表于2016-05-10 12:32 被阅读2056次

    摘要:本文介绍了在 Mac 系统下如何自动下载 Bing.com 中每天更新的壁纸。无需任何编程基础,按照步骤做就可以了。

    我个人很喜欢用必应,很大一部分原因就是其首页每天更新的漂亮壁纸。后来我就想,如果能把这些壁纸自动用作桌面壁纸该有多爽,一番研究后就有了这篇文章。

    壁纸预览

    这件事情其实并不复杂,只需以下几个简单步骤:

    • 打开终端(Terminal),复制下面这句代码:
      cd $HOME/Pictures && mkdir bing-bing-wallpapers && touch bing-wallpaper.sh
      粘贴到刚刚打开的终端中,点击回车键。

    • 然后复制下面的代码:
      open -a TextEdit bing-wallpaper.sh
      粘贴到终端中,点击回车键,会有一个空白的窗口弹出来。

    • 拷贝下面的代码到刚刚打开的窗口中,按 Command+S 保存,然后关闭窗口就可以了。

    #!/usr/bin/env bash
    
    PICTURE_DIR="$HOME/Pictures/bing-wallpapers/"
    
    mkdir -p $PICTURE_DIR
    
    urls=( $(curl -s http://cn.bing.com | \
        grep -Eo "url:'.*?'" | \
        sed -e "s/url:'\([^']*\)'.*/http:\/\/bing.com\1/" | \
        sed -e "s/\\\//g") )
    
    for p in ${urls[@]}; do
        filename=$(echo $p|sed -e "s/.*\/\(.*\)/\1/")
        if [ ! -f $PICTURE_DIR/$filename ]; then
            echo "Downloading: $filename ..."
            curl -Lo "$PICTURE_DIR/$filename" $p
        else
            echo "Skipping: $filename ..."
        fi
    done
    
    • 继续,复制下面的代码到终端中,点击回车键。

    cd $HOME/Library/LaunchAgents && touch com.ideasftw.bing-wallpaper.plist

    • 再复制下面的代码到终端,点击回车键,会有一个空白的窗口弹出来。

    open -a TextEdit com.ideasftw.bing-wallpaper.plist

    • 将下面的代码粘贴到刚才的空白窗口中,Command+S 保存,然后关闭窗口即可。
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
        <dict>
            <key>Label</key>
            <string>com.ideasftw.bing-wallpaper</string>
            <key>ProgramArguments</key>
            <array>
                <string>/bin/bash</string>
                <string>$HOME/Pictures/bing-wallpaper.sh</string>
            </array>
            <key>LowPriorityIO</key>
            <true/>
            <key>Nice</key>
            <integer>1</integer>
            <key>StartCalendarInterval</key>
            <dict>
                <key>Hour</key>
                <integer>10</integer>
                <key>Minute</key>
                <integer>0</integer>
            </dict>
        </dict>
    </plist>
    
    • 最后一步,拷贝下面的代码到终端,点击回车键,然后关闭终端即可。

    launchctl load $HOME/Library/LaunchAgents/com.ideasftw.bing-wallpaper.plist

    到此为止,所有的跟代码相关的任务都完成了。以后每天都会有一张最新的 Bing 美图下载到你的图片文件夹下的 bing-wallpapers 文件夹中。等积攒了够多张以后,你就可以用它来做壁纸文件夹咯。

    壁纸文件夹

    参考链接:thejandroman/bing-wallpaper

    相关文章

      网友评论

      • 708d0f26b105:bing-bing-wallpapers 这个文件名错了 还有个 bing-wallpapers
      • 421a98b7f74a:很多天过去了,没有下载图片呀
        Devid:@秋烬 笑了……
      • 421a98b7f74a:cool, 学习了
      • dadab85fc520:点赞 太佩服了
      • 0160804db1ba: 我第二空白窗口弹不出来,终端提示我那个文件不存在,怎么破??
        2fd39934022a:WOYESHI
      • lixiaohao:哈哈,我也做了一个 ,在服务器谢了哥定时任务 下载之后上传到七牛
      • radio:挺好,不过我记得有地方专门汇总来着,不过有些壁纸主题不适合做壁纸。

      本文标题:Mac 每天自动下载 Bing 壁纸

      本文链接:https://www.haomeiwen.com/subject/vxcyrttx.html