在这个自动化的时代,我们有很多重复无聊的工作要做。想想这些您不再需要一次又一次做的无聊事情,将其自动化并让您的生活更轻松。那么在这篇文章中,我将向您介绍10个Python自动化脚本,让您的工作更加自动化,让您的生活更轻松。所以,没有更多的重复性任务将这篇文章添加到您的列表中,让我们开始吧。1.解析和提取HTML这个自动化脚本将帮助您从网页URL中提取HTML,然后还为您提供可用于解析HTML以获取数据的函数。这个很棒的脚本非常适合网络爬虫和那些想要为重要数据解析HTML的人。#解析和提取HTML#pipinstallgazpachoimportgazpacho#从URL中提取HTMLurl='https://www.example.com/'html=gazpacho.get(url)print(html)#使用Headersheaders={'User-Agent':'Mozilla/5.0'}html=gazpacho.get(url,headers=headers)print(html)#解析HTMLparse=gazpacho.Soup(html)#查找单个标签tag1=parse.find('h1')tag2=parse.find('span')#查找多个标签tags1=parse.find_all('p')tags2=parse.find_all('a')#通过classtag查找标签=parse.find('.class')#通过查找标签attributetag=parse.find("div",attrs={"class":"test"})#从标签中提取文本text=parse.find('h1').texttext=parse.find_all('p')[0].text2,QRcodescanner有很多QR码图片或者只是想扫描QR码图片,那么这个自动化脚本可以帮到你。此脚本使用Qrtools模块,使您能够以编程方式扫描QR图像。#QrcodeScanner#pipinstallqrtoolsfromqrtoolsimportQrdefScan_Qr(qr_img):qr=Qr()qr.decode(qr_img)print(qr.data)returnqr.dataprint("你的二维码是:",Scan_Qr("qr.png"))3.屏幕截图现在,您可以使用下面这个很棒的脚本以编程方式截取屏幕截图。使用此脚本,您可以直接截屏或截取特定区域的屏幕截图。#抓取屏幕截图#pipinstallpyautogui#pipinstallPillowfrompyautoguiimportscreenshotimporttimefromPILimportImageGrab#抓取屏幕截图grab_screenshot():shot=screenshot()shot.save('my_screenshot.png')#抓取Specific_grabareshot()的屏幕截图:area=(0,0,500,500)shot=ImageGrab.grab(area)shot.save('my_screenshot_area.png')#使用Delaydef抓取屏幕截图grab_screenshot_delay():time.sleep(5)shot=screenshot()shot.save('my_screenshot_delay.png')4.创建有声读物厌倦了手动将您的PDF书籍转换为有声读物,这里是您的自动脚本,它使用GTTS模块将您的PDF文本转换为音频。#创建有声读物#pipinstallgTTS#pipinstallPyPDF2fromPyPDF2importPdfFileReaderasreaderfromgttsimportgTTSdefcreate_audio(pdf_file):read_Pdf=reader(open(pdf_file,'rb'))forpageinrange(read_Pdf.numPages):text=read_Pdf.getPage(page).extractText()tts=gTTS(text,lang='en')tts.save('page'+str(page)+'.mp3')create_audio('book.pdf')5、PDF编辑器使用以下自动化脚本来使用Python编辑PDF文件。此脚本使用PyPDF4模块,它是PyPDF2的升级版本。下面我写了ParseText,Removepages等常用功能。当您有大量PDF文件要编辑或需要在Python项目中以编程方式使用脚本时,这是一个方便的脚本。#PDF编辑器#pipinstallPyPDF4importPyPDF4#从PDFdef解析文本parse_text(pdf_file):reader=PyPDF4.PdfFileReader(pdf_file)forpageinreader.pages:print(page.extractText())#RemovePagefromPDFdefremove_page(pdf_file,page_numbers):filer=PyPDF4.PdfReader('source.pdf','rb')out=PyPDF4.PdfWriter()forindexinpage_numbers:page=filer.pages[index]out.add_page(page)withopen('rm.pdf','wb')asf:out.write(f)#添加空白页到PDFdefadd_page(pdf_file,page_number):reader=PyPDF4.PdfFileReader(pdf_file)writer=PyPDF4.PdfWriter()writer.addPage()withopen('add.pdf','wb')asf:writer.write(f)#RotatePagesdefrotate_page(pdf_file):reader=PyPDF4.PdfFileReader(pdf_file)writer=PyPDF4.PdfWriter()forpageinreader.pages:page.rotateClockwise(90)writer.addPage(page)withopen('rotate.pdf','wb')asf:writer.write(f)#MergePDFsdefmerge_pdfs(pdf_file1,pdf_file2):pdf1=PyPDF4.PdfFileReader(pdf_file1)pdf2=PyPDF4.PdfFileReader(pdf_file2)writer=PyPDF4.PdfWriter()forpageinpdf1.pages:writer.addPage(page)forpageinpdf2.pages:writer.addPage(page)withopen('merge.pdf','wb')asf:writer.write(f)6.MiniStackoverflow作为程序员,我知道我们每天都需要StackOverflow,但你不再现在谷歌搜索,在您继续处理项目的同时在您的CMD中获得直接解决方案。通过使用Howdoi模块,您可以在命令提示符或终端中获取StackOverflow解决方案。您可以在下面找到一些示例来尝试。#自动化Stackoverflow#pipinstallhowdoi#在CMD中获取答案#example1>howdoi如何安装python3#example2>howdoiselenium输入键#example3>howdoi如何安装模块#example4>howdoiParsehtmlwithpython#example5>howdoiintnotiterableerror#example6>howdoi如何用python解析pdf#example7>howdoi在python中排序列表#example8>howdoi在python中合并两个列表#example9>howdoi获取列表python中的最后一个元素#example10>如何快速排序列表7.使您的手机自动化这个自动化脚本将帮助您使用Python中的Android调试桥(ADB)使您的智能手机自动化。下面我将展示如何自动执行常见任务,例如滑动手势、通话、短信等。您可以了解有关ADB的更多信息,并探索更多令人兴奋的方法来实现手机自动化,让您的生活更轻松。#自动化手机#pipinstallopencv-pythonimportsubprocessdefmain_adb(cm):p=subprocess.Popen(cm.split(''),stdout=subprocess.PIPE,shell=True)(output,_)=p.communicate()returnoutput.decode('utf-8')#Swipedefswipe(x1,y1,x2,y2,duration):cmd='adbshellinputswipe{}{}{}{}{}'.format(x1,y1,x2,y2,duration)returnmain_adb(cmd)#TaporClickingdeftap(x,y):cmd='adbshellinputtap{}{}'.format(x,y)returnmain_adb(cmd)#进行Calldefmake_call(number):cmd=f"adbshellamstart-aandroid.intent.action.CALL-dtel:{number}"returnmain_adb(cmd)#SendSMSdefsend_sms(number,message):cmd='adbshellamstart-aandroid.intent.action.SENDTO-dsms:{}--essms_body"{}"'.format(number,message)returnmain_adb(cmd)#DownloadFileFromMobiletoPCdefdownload_file(file_name):cmd='adbpull/sdcard/{}'.format(file_name)returnmain_adb(cmd)#截图defscreenshot():cmd='adbshellscreencap-p'returnmain_adb(cmd)#PowerOnandOffdefpower_off():cmd='"adbshellinputkeyevent26"'returnmain_adb(cmd)8.监控CPU/GPU温度您可能使用CPU-Z或任何规格监控软件来捕获您的Cpu和Gpu温度,但您也可以通过编程方式完成。好吧,这个脚本使用Pythonnet和OpenhardwareMonitor来帮助您监控当前的Cpu和Gpu温度。您可以使用它在达到特定温度时通知自己,也可以在您的Python项目中使用它来简化您的日常生活。#获取CPU/GPU温度#pipinstallpythonnetimportclrclr.AddReference("OpenHardwareMonitorLib")fromOpenHardwareMonitorLibimport*spec=Computer()spec.GPUEnabled=Truespec.CPUEnabled=Truespec.Open()#GetCPUTempdefCpu_Temp():whileTrue:对于cpuinrange(0,len(spec.Hardware[0].Sensors)):if"/temperature"instr(spec.Hardware[0].Sensors[cpu].Identifier):print(str(spec.Hardware[0].Sensors[cpu].Value))#GetGPUTempdefGpu_Temp()whileTrue:forgpuinrange(0,len(spec.Hardware[0].Sensors)):if"/temperature"在str(spec.Hardware[0].Sensors[gpu].Identifier):print(str(spec.Hardware[0].Sensors[gpu].Value))9.Instagram上传机器人Instagram是一个著名的社交媒体平台,你现在无需通过智能手机上传照片或视频。您可以使用以下脚本以编程方式执行此操作。#在Insta上上传照片和视频#pipinstallinstabotfrominstabotimportBotdefUpload_Photo(img):robot=Bot()robot.login(username="user",password="pass")robot.upload_photo(img,caption="MediumArticle")print("PhotoUploaded")defUpload_Video(video):robot=Bot()robot.login(username="user",password="pass")robot.upload_video(video,caption="MediumArticle")print("VideoUploaded")defUpload_Story(img):robot=Bot()robot.login(username="user",password="pass")robot.upload_story(img,caption="MediumArticle")打印("StoryPhotosUploaded")Upload_Photo("img.jpg")Upload_Video("video.mp4")10.视频水印使用这个自动脚本为您的视频添加水印,该脚本使用方便的视频编辑模块Moviepy。在下面的脚本中,您可以看到如何添加水印并自由使用。#使用Python的视频水印#pipinstallmoviepyfrommoviepy.editorimport*clip=VideoFileClip("myvideo.mp4",audio=True)width,height=clip.sizetext=TextClip("WaterMark",font='Arial',color='white',fontsize=28)set_color=text.on_color(size=(clip.w+text.w,text.h-10),color=(0,0,0),pos=(6,'center'),col_opacity=0.6)set_textPos=set_color.set_pos(lambdapos:(max(width/30,int(width-0.5*width*pos)),max(5*height/6,int(100*pos))))Output=CompositeVideoClip([clip,set_textPos])Output.duration=clip.durationOutput.write_videofile("output.mp4",fps=30,codec='libx264')最后的想法希望你能找到一些新的有趣的东西来自动化你的日常任务。如果您喜欢这篇文章,请不要忘记分享给您的朋友,请点赞,关注我,有什么问题请在留言区给我留言,感谢您的阅读,祝您愉快幸福生活!
