昨天在逛zhiyb的github(http://zhiyb.github.io/)的时候。。。点到了他的OneDrive里看了看,结果发现了一个好像很有用的小脚本:
bing.sh
#!/bin/bash -e url="http://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=10" data="$(curl -so - "$url")" num="$(echo "$data" | jq -r ".images | length")" mkdir -p images cd images for ((i = 0; i < $num; i++)); do imgdata="$(echo "$data" | jq -r ".images[$i]")" url="$(echo "$imgdata" | jq -r ".url")" [ "${url:0:4}" != "http" ] && url="http://www.bing.com/$url" echo "$url" base="$(basename "$url")" base="${base%%_*}.${base##*.}" [ -s "$base" ] && continue curl -o "$base" "$url" mkdir -p json echo "$imgdata" > json/"$base.json" done
然而跑了跑好像少了什么组件,没跑成。。
所以我用powershell改写了一个(毕竟咱用的是windows
花了一点时间就写好了。(才发现powershell简直神器啊
bing.ps1
#by chenxublog.com mkdir images cd images mkdir jsons cd jsons $url = "http://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=10" $time = Get-Date $data = Invoke-WebRequest $url $data.Content | Out-File $time.DayOfYear $decode = ConvertFrom-Json($data) cd .. $range = 1..8 $count = $range.Count for($i=0; $i -lt $count; $i++) { $temp = $decode.images.Get($i) Invoke-WebRequest $temp.url -OutFile ($temp.hsh + ".jpg") }
把上面的文件保存为bing.ps1就好啦→_→
右击,运行!
啪!
啪啪啪!
这样每天就可以收到八张好看的壁纸啦~~
2017.3.5补充:
必应json改规则了,代码更新~~~
#by chenxublog.com $x = Split-Path -Parent $MyInvocation.MyCommand.Definition cd $x mkdir images cd images mkdir jsons cd jsons $url = "http://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=10" $time = Get-Date $data = Invoke-WebRequest $url $data.Content | Out-File $time.DayOfYear $decode = ConvertFrom-Json($data) cd .. $range = 1..8 $count = $range.Count for($i=0; $i -lt $count; $i++) { $temp = $decode.images.Get($i) $urlsplit = -Join("http://www.bing.com",$temp.url) echo $urlsplit Invoke-WebRequest $urlsplit -OutFile ($temp.hsh + ".jpg") } echo ok! pause
应该正常了吧。。
转载保留版权:晨旭的博客 » 《用一个小脚本在win/*nix上一键下载bing每日壁纸》如果喜欢可以: 点击右侧上方的邮件订阅,订阅本站
图片分辨率呢?