大家好,我是陈诚!你有没有发现,你每天可能会进行很多重复性的工作,比如阅读pdf、播放音乐、打开书签、清理文件夹等等。今天分享4个实用的python自动化脚本,非常方便,不用一次又一次手动完成这些任务。1.PDF转音频文件该脚本可以将pdf文件转成音频文件。原理也很简单。首先使用PyPDF提取pdf中的文字,然后使用Pyttsx3将文字转为语音。对于文本转语音,您还可以阅读这篇文章。FastAPI:快速开发文本到语音的接口。代码如下:importpyttsx3,PyPDF2pdfreader=PyPDF2.PdfFileReader(open('story.pdf','rb'))speaker=pyttsx3.init()forpage_numinrange(pdfreader.numPages):text=pdfreader.getPage(page_num).extractText()##从PDF中提取文本cleaned_text=text.strip().replace('\n','')##删除不必要的空格和断行print(cleaned_text)peakerromPDF##Print#thetextf.say(cleaned_text)##让演讲者说出文本speaker.save_to_file(cleaned_text,'story.mp3')##在音频文件'story.mp3'中保存文本speaker.runAndWait()speaker.stop()2、从列表中随机播放音乐这个脚本会从歌曲文件夹中随机选择一首歌曲进行播放。需要注意的是os.startfile只支持Windows系统。importrandom,osmusic_dir='G:\\newenglishsongs'songs=os.listdir(music_dir)song=random.randint(0,len(songs))print(songs[song])##打印歌曲名称os.startfile(os.path.join(music_dir,songs[0]))3.没有书签了。每天睡觉前都会在网上搜索一些好的内容,第二天再看。大多数时候,我会为遇到的网站或文章添加书签,但我的书签每天都在增长,现在我的浏览器中有超过100个书签。所以,在python的帮助下,我想出了另一种方法来解决这个问题。现在,我将这些站点的链接复制并粘贴到一个文本文件中,每天早上我运行脚本以在我的浏览器中再次打开所有这些站点。importwebbrowserwithopen('./websites.txt')asreader:forlinkinreader:webbrowser.open(link.strip())代码使用webbrowser,它是Python中的一个库,可以在默认浏览器URL中自动打开.4、清理下载文件夹世界上最乱的东西之一就是开发者的下载文件夹,里面存放着很多乱七八糟的文件。此脚本将根据大小限制清理您的下载文件夹,并且只会清理较旧的文件。:importosimportthreadingimporttimedefget_file_list(file_path):#文件按最后修改时间排序dir_list=os.listdir(file_path)ifnotdir_list:returnreturnelse:dir_list=sorted(dir_list,key=os.path(time.os.path.join(file_path,x)))returndir_listdefget_size(file_path):""""[summary]Args:file_path([type]):[directory]??Returns:[type]:returndirectorysize,MB"""totalsize=0forfilenameinos.listdir(file_path):totalsize=totalsize+os.path.getsize(os.path.join(file_path,filename))#print(totalsize/1024/1024)returntotalsize/10241024defdetect_file_size(file_path,size_Max,size_Del):""""[summary]Args:file_path([type]):[filedirectory]??size_Max([type]):[foldermaximumsize]size_Del):([type][超过size_Max时要删除的大小]"""print(get_size(file_path))ifget_size(file_path)>size_最大值:fileList=get_file_list(file_path)foriinrange(len(fileList)):ifget_size(file_path)>(size_Max-size_Del):fileprint("del:%diList+[i%s"1,%(]))#os.remove(file_path+fileList[i])defdetectFileSize():#检测线程,每5秒检测一次whileTrue:print('======detect============')detect_file_size("/Users/aaron/Downloads/",100,30)time.sleep(5)if__name__=="__main__":#创建检测线程detect_thread=threading.Thread(target=detectFileSize)detect_thread.start()最后一句话就是本文分享的4个实用的python自动化脚本。如果您觉得有帮助,请点个赞,感谢您的支持!
