每天更新bing首页图片为桌面壁纸
来源:互联网 发布:2017国服英雄联盟mac版 编辑:程序博客网 时间:2024/04/28 14:32
功能
每天自动从bing首页下载首页图片,再添加该图片文字描述的水印,然后设置到桌面壁纸。
链接分析
打开bing首页,开chrome调试,捕捉network,再点击上一张,下一张时可以看到一个比较规律的URL,http://cn.bing.com/HPImageArchive.aspx?format=js&idx=1&n=1&nc=1498657985239&pid=hp&video=1,这个url返回一个json数据如下,里面就有首页图片的url
{ "images": [ { "startdate": "20170624", "fullstartdate": "201706241600", "enddate": "20170625", "url": "/az/hprichbg/rb/SanLorenzo_ZH-CN7625061136_1920x1080.jpg", "urlbase": "/az/hprichbg/rb/SanLorenzo_ZH-CN7625061136", "copyright": "圣老楞佐圆形堂,意大利曼托瓦 (© geo-select FotoArt)", "copyrightlink": "/search?q=%e5%9c%a3%e8%80%81%e6%a5%9e%e4%bd%90%e5%9c%86%e5%bd%a2%e5%a0%82&form=hpcapt&mkt=zh-cn", "quiz": "/search?q=Bing+homepage+quiz&filters=WQOskey:%22HPQuiz_20170624_SanLorenzo%22&FORM=HPQUIZ", "wp": true, "hsh": "d6370baf98120bf530cea4264b7540b0", "drk": 1, "top": 1, "bot": 1, "hs": [] } ], "tooltips": { "loading": "正在加载...", "previous": "上一个图像", "next": "下一个图像", "walle": "此图片不能下载用作壁纸。", "walls": "下载今日美图。仅限用作桌面壁纸。", "play": "播放视频", "pause": "暂停视频" }}
简单测试了下这个url,idx表示当前天往前往后的索引,1表示昨天,-1表示明天,-2请求不到数据。n为请求图片的张数,nc为1970到现在的秒数。
添加水印
bing首页的图片还是比较好看的,但终归是外行看热闹,看不懂是啥,是什么地方。所以琢磨在图片上加个水印,想了下,加水印有两种思路,一种是通过云端API处理图片,一种是本地命令行处理图片。查了下,用imagemagick在linux本地加水印很方便,而且我ubuntu直接有装,那么一条命令就可以添加文字水印了。参照了官方说明文档,使用这条命令添加:
convert 1.jpg -font 文泉驿微米黑 -pointsize 30 -draw "gravity south fill black text 0,12 '卡拉尼什巨石阵,苏格兰路易斯岛' fill white text 1,11 '卡拉尼什巨石阵,苏格兰路易斯岛' " 2.jpg
其中0,12表示水印的位置,12表示距底部的像素。为了能同时应对深色背景和浅色背景,所以同时添加了白色和黑色的水印文字。
注意:
如果报错convert: unable to read font 'Arial'
找不到字体,你可以执行如下命令看下有那些字体convert -list font
。如果加中文水印,要选用支持中文的字体。
效果图:
定时执行
添加到crontab即可,为了方便另外写了个脚本控制。为了在开机后能尽快更新壁纸,我把执行周期设置为10分钟,更新成功后添加临时文件做标记,以便今天不再更新。
源码移步github: bing_wallpaper
- 每天更新bing首页图片为桌面壁纸
- 下载bing图片并设置成桌面壁纸
- Java与Python下载Bing首页图片
- 将本地图片设置为桌面壁纸方法
- Python3抓取Bing每日图片做桌面背景,并设置为开机更新背景
- python:偷取bing首页面图片作为桌面背景
- python3 抓取必应bing首页图片作为桌面背景
- 【初学Python】利用python抓取bing首页图片
- Java使用正则表达式抓取Bing首页每日图片
- 设为首页加入收藏 图片
- Browser首页为一张图片
- 获取图片做桌面壁纸
- 利用Powershell每天自动设置提取Win10的windows聚焦图片(Spotlight)作为桌面壁纸的方法
- 利用Powershell每天自动设置提取Win10的windows聚焦图片(Spotlight)作为桌面壁纸的方法
- 设桌面壁纸一直为居中
- 每天更新美图的图片地址
- Bing获取-获取Bing每日图片
- NGNc首页更新,正式更名为"NGNc开发者网络"
- 多年iOS开发经验总结(一) 其实就是一些常用的代码块
- 4.利用Model Builder迭代器对数据批处理
- Spark计算平台算子介绍与学习
- 解决mysql安装后Can't connect to local MySQL server through socket '/tmp/mysql.sock' 问题
- ssm框架之导出
- 每天更新bing首页图片为桌面壁纸
- java char 和string
- Linux-在linux修改文件夹及其子文件夹的权限
- html页面中meta的作用
- 欢迎使用CSDN-markdown编辑器
- 吸血鬼数字求解
- cmake 使用教程
- sicily 1029. Rabbit | 高精度加法+递推(类斐波那契推导)
- 使用 PHP 创建 PNG 图像