ubuntu16.04LTS中如何实现开机启动自动更换壁纸
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,这篇文章将为大家详细讲解有关ubuntu16.04LTS中如何实现开机启动自动更换壁纸,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。功能功能的话,是从必应壁纸爬取最
千家信息网最后更新 2025年12月02日ubuntu16.04LTS中如何实现开机启动自动更换壁纸
这篇文章将为大家详细讲解有关ubuntu16.04LTS中如何实现开机启动自动更换壁纸,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
功能
功能的话,是从必应壁纸爬取最新的那张壁纸,然后本来因为我怕电脑又放了太多东西,就设置了个图片最大的数目,到达这个阈值就删除所有的图片= =|| 通过python的os模块,设置壁纸,
这里可以参考:how-to-change-desktop-background-from-command-line-in-unity , 还有就是考虑到刚开机时我不一定连得上网(辛酸 T_T),所以设置了一个爬取的间隔
代码
# -*- coding: utf-8 -*-#!/usr/bin/python#!/bin/bash# ---------------------------------------------------------- ## This is a script which can change background automatically ## every time the system starts. ## author: Huang Zhenyang ## email: 745125931@qq.com ## ---------------------------------------------------------- ## ----- Import ----- #import osimport reimport urllibimport timeimport socket# --- End Import --- #class Spider(object): """ This is the spider to get the img from being """ def __init__( self, img_matched_pattern_para, url_para, file_name_para ): """ init function :param img_matched_pattern_para: the pattern to match a img :param url_para: url to crawler :param file_name_para: file name """ self.img_matched_pattern = img_matched_pattern_para self.url = url_para self.file_name = file_name_para def get_img(self): """ download the image :return: """ html = self.get_html() img_pos = re.search(self.img_matched_pattern, html) img_page_href = self.url + img_pos.group()[6:-7] + "download" urllib.urlretrieve(img_page_href, self.file_name) def get_html(self): """ return the html :return: page's html""" page = urllib.urlopen(self.url) html = page.read() return htmlclass Controller(object): """ This is the controller to control the spider's parameters. """ def __init__(self, pattern_href_para, path_para, url_para, img_max_num_para): """ :param pattern_href_para: href's match pattern :param path_para: path to save images :param url_para: url :param img_max_num_para: max number that the """ self.pattern_href = pattern_href_para self.path = path_para self.url = url_para self.img_max_num = img_max_num_para self.file_name = "" self.init_file_name = "0.jpg" self.file_extension_name = ".jpg" def judge(self): """ judge if the number of images is grater than img_max_num. if true, delete all of them and then run spider, else directly run spider. Also, we should set the file name. :return: """ root = None _dirs = None files = None for root, _dirs, files in os.walk(self.path, True): pass files_len = len(files) if files_len == 10: for i in range(0, 10): os.remove(root + files[i]) self.file_name = self.path + self.init_file_name else: self.file_name = self.path + str(files_len) + self.file_extension_name def run_spider(self): """ run spider. TODO: This function needs to be modified in the future which makes these two class coupling too much. :return: """ # In case user's computer hasn't connect the internet. for i in range(0, 60): try: spider = Spider(self.pattern_href, self.url, self.file_name) spider.get_img() break except IOError as e: print "Connection error: %s" % e time.sleep(60) continue except Exception as e: print "Connection error: %s" % e time.sleep(60) continue c_path = '"file://' + self.file_name + '"' # absolute path # call system command to change the gnome background os.system('gsettings set org.gnome.desktop.background picture-uri ' + c_path) print "gsettings set org.gnome.desktop.background picture-uri " + c_pathif __name__ == '__main__': pattern_href = r'href="/photo/.*?" rel="external nofollow" ' path = '/home/hzy/图片/backgrounds/' url = 'https://bing.ioliu.cn/' img_max_num = 10 controller = Controller(pattern_href, path, url, img_max_num) controller.judge() controller.run_spider()
开机自启动
在/home/hzy/.config/autostart中,新建一个xxx.desktop的文件,内容如下:
[Desktop Entry]Name=autoChangeBackgroundImgComment=Python ProgramExec=python /home/hzy/Script/autoChangeBackgroundImg/autoChangeBackgroundImg.pyIcon=/home/hzy/Script/autoChangeBackgroundImg/autoChangeBackgroundImg.pngTerminal=falseMultipleArgs=falseType=ApplicationCategories=Application;Development;StartupNotify=true
说明:
1. Exec 后面的路径就是该脚本的路径
2. Icon的话可以自己随便找个图片,设置成该路径即可
关于"ubuntu16.04LTS中如何实现开机启动自动更换壁纸"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
壁纸
图片
篇文章
内容
功能
就是
更多
路径
参考
不错
实用
最大
辛酸
东西
代码
数目
文件
文章
机时
模块
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
江西服务器机柜厂家供应虚拟主机
中国工商银行软件开发试题
广东潮汕人互联网科技公司
m4a4网络安全
计算机的5个网络安全体系
mc服务器地皮多大
武汉国产信创服务器
天堂1数据库宠物
本地数据库清空
芜湖享游网络技术是什么意思
部署k8s服务器资源
数据库绿化
平罗软件开发
外网访问内网数据库 安全性
课外阅读软件开发
宣城通信软件开发需要多少钱
头条数据库技术框架
服务器管理薪酬
普陀区软件开发技术咨询优势
临沂大学计算机网络技术代码
数据库中怎么写一个触发器
远方网络技术
ctf网络安全大赛gun
数据库统计姓名分类的记录数
电子商务网络安全形势
西安包车软件开发
阿里云服务器管理员密码忘了
福建系统软件开发哪家好
北京机房服务器报价
数据库应用实践报告