重复的任务总是耗费时间和枯燥的。想象一下,逐一裁剪100张照片,或者做诸如Fetching APIs、纠正拼写和语法等任务,所有这些都需要大量的时间。为什么不把它们自动化呢?在今天的文章中,我将与你分享10个Python自动化脚本。
所以,请把这篇文章保留在你的书签里,供以后参考。在IT行业,程序员永远不会停止学习......
现在,让我们开始吧。
01、图像优化器
这个伟大的自动化脚本可以帮助你更好地处理图片,你可以像在Photoshop中一样编辑它们。
该脚本使用流行的Pillow模块。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# 图像优化 # pip install Pillow importPIL # 裁剪 im =PIL.Image.open("Image1.jpg") im =im.crop((34, 23, 100, 100)) # 调整大小 im =PIL.Image.open("Image1.jpg") im =im.resize((50, 50)) # 翻转 im =PIL.Image.open("Image1.jpg") im =im.transpose(PIL.Image.FLIP_LEFT_RIGHT) # 旋转 im =PIL.Image.open("Image1.jpg") im =im.rotate(360) # 压缩 im =PIL.Image.open("Image1.jpg") im.save("Image1.jpg", optimize=True, quality=90) # 模糊化 im =PIL.Image.open("Image1.jpg") im =im.filter(PIL.ImageFilter.BLUR) # 锐化 im =PIL.Image.open("Image1.jpg") im =im.filter(PIL.ImageFilter.SHARPEN) # 设置亮度 im =PIL.Image.open("Image1.jpg") im =PIL.ImageEnhance.Brightness(im) im =im.enhance(1.5) # 设置对比度 im =PIL.Image.open("Image1.jpg") im =PIL.ImageEnhance.Contrast(im) im =im.enhance(1.5) # 添加过滤器 im =PIL.Image.open("Image1.jpg") im =PIL.ImageOps.grayscale(im) im =PIL.ImageOps.invert(im) im =PIL.ImageOps. posterize(im, 4) # 保存 im.save("Image1.jpg") |
02、视频优化器
通过下面的自动化脚本,你不仅可以用Python来优化视频,还可以用它来优化图像。该脚本使用Moviepy模块,它允许你修剪、添加音频、设置视频速度、添加VFX等。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# 视频优化器 # pip install moviepy importmoviepy.editor as pyedit # 加载视频 video =pyedit.VideoFileClip("vid.mp4") # 修剪 vid1 =video.subclip(0, 10) vid2 =video.subclip(20, 40) final_vid =pyedit.concatenate_videoclips([vid1, vid2]) # 加快视频的速度 final_vid =final_vid.speedx(2) # 在视频中添加音频 aud =pyedit.AudioFileClip("bg.mp3") final_vid =final_vid.set_audio(aud) # 反转视频 final_vid =final_vid.fx(pyedit.vfx.time_mirror) # 合并两个视频 vid1 =pyedit.VideoFileClip("vid1.mp4") vid2 =pyedit.VideoFileClip("vid2.mp4") final_vid =pyedit.concatenate_videoclips([vid1, vid2]) # 在视频中添加视觉特效 vid1 =final_vid.fx(pyedit.vfx.mirror_x) vid2 =final_vid.fx(pyedit.vfx.invert_colors) final_vid =pyedit.concatenate_videoclips([vid1, vid2]) # 在视频中添加图像 img1 =pyedit.ImageClip("img1.jpg") img2 =pyedit.ImageClip("img2.jpg") final_vid =pyedit.concatenate_videoclips([img1, img2]) # 保存视频 final_vid.write_videofile("final.mp4") |
03、将PDF转换为图像
这个小的自动化脚本可以很容易地检索整个PDF页面并将其转换为图像。该脚本使用了流行的PyMuPDF模块,该模块以其PDF文本提取而闻名。
1 2 3 4 5 6 7 8 9 10 |
# PDF to Images # pip install PyMuPDF importfitz defpdf_to_images(pdf_file): doc =fitz.open(pdf_file) forp indoc: pix =p.get_pixmap() output =f "page{p.number}.png" pix.writePNG(output) pdf_to_images("test.pdf") |
04、获取API数据
如果你需要从数据库中获取API数据,或者需要向服务器发送API请求,这个自动化脚本是你的一个便利工具。使用Urlib3模块,你可以获取和发布API请求。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
# pip install urllib3 输入urllib3 # 获取API数据 url ="https://api.github.com/users/psf/repos" http =urllib3.PoolManager() response =http.request('GET', url) print(response.status) print(response.data) # 发布API数据 url ="https://httpbin.org/post" http =urllib3.PoolManager() response =http.request('POST', url, fields={'hello': 'world'}) print(response.status) |
05、电池指示灯
这个方便的脚本允许你设置你想接收通知的电池百分比。该脚本使用Pyler进行通知,并使用Psutil来获取当前的电池百分比。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
# 电池通知器 # pip instal plyer fromplyer importnotification importpsutil fromtime importsleep whileTrue: battery =psutil.sensors_battery() life =battery.percent #寿命 = 电池百分比 iflife < 50: notification.notify( title ="Battery Low"#电池电量不足 message ="Please connect to power source", timeout =10 ) sleep(60) |
06、语法修正器
厌倦了校对你的长篇文章或文本?那么,你可以试试这个自动脚本,它将扫描你的文本并纠正语法错误。这个伟大的脚本使用了Happtransformer模块,它是一个机器学习模块,经过训练可以修正文本中的语法错误。
1 2 3 4 5 6 7 8 9 10 11 |
# Grammer Fixer # pip install happytransformer fromhappytransformer importHappyTextToText as HappyTTT fromhappytransformer importTTSettings defGrammer_Fixer(Text): Grammer =HappyTTT("T5","prithivida/grammar_error_correcter_v1") config =TTSettings(do_sample=True, top_k=10, max_length=100) corrected =Grammer.generate_text(Text, args=config) print("Corrected Text: ", corrected.text) Text ="This is smple tet we how know this" Grammer_Fixer(Text) |
07、拼写纠正
这个伟大的脚本将帮助你纠正文本单词中的拼写错误。你可以找到下面的脚本,它将告诉你如何修正一个句子中的单个或多个单词。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# 拼写修正器 # pip 安装 textblob # pip install textblob fromtextblob import* deffix_paragraph_words(paragraph): sentence =TextBlob(paragraph) correction =sentence.correct() print(correction) # 修复字词拼写 deffix_word_spell(word): word =Word(word) 更正 =word.correct() print(correction) fix_paragraph_words("this is sammple tet!!") fix_word_spell("maangoo") |
08、互联网下载器
你可能使用下载软件从互联网上下载照片或视频,但现在你可以使用Python IDM模块创建自己的下载器。
1 2 3 4 5 6 7 8 9 10 |
# Python Downloader # pip install internetdownloadmanager importinternetdownloadmanager as idm defDownloader(url, output): pydownloader =idm.Downloader(worker=20, part_size=1024*1024*10, resumable=True,) pydownloader .download(url, output) Downloader("Link url", "image.jpg") Downloader("Link url", "video.mp4") |
09、获取世界新闻
使用这个自动脚本,可以随时以任何国家/地区的任何语言更新每日的世界新闻。这个API允许你每天免费获得50条新闻。
1 2 3 4 5 6 7 8 9 |
# pip install requests importrequests ApiKey ="YOUR_API_KEY" url ="https://api.worldnewsapi.com/search-news?text=hurricane&api-key={ApiKey}" headers ={ 'Accept': 'application/json' } response =requests.get(url, headers=headers) print("News: ", response.json()) |
10、PySide2 GUI
这个自动化脚本将帮助你使用PySide2 Gui模块创建你的GUI应用程序。你可以在下面找到开始开发现代应用程序的前端所需的每一种方法。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# PySide2 # pip install PySide2 fromPySide6.QtWidgets import* fromPySide6.QtGui import* app =QApplication(sys.argv) window =QWidget() # 调整窗口的大小 window.resize(500, 500) # 设置窗口标题 window.setWindowTitle("PySide2 Window") # 添加按钮 button =QPushButton("Click Me", window) button.move(200, 200) # 添加标签文本 label =QLabel("Hello Medium", window) label.move(200, 150) # 添加输入框 input_box =QLineEdit(window) input_box.move(200, 250) print(input_box.text()) # 添加单选按钮 radio_button =QRadioButton("Radio Button", window) radio_button.move(200, 300) # 添加复选框 checkbox =QCheckBox("Checkbox", window) checkbox.move(200, 350) # 添加滑块 slider =QSlider(window) slider.move(200, 400) # 添加进度条 progress_bar =QProgressBar(window) progress_bar.move(200, 450) # 添加图片 image =QLabel(window) image.setPixmap(QPixmap("image.png")) # 添加消息框 msg =QMessageBox(window) msg.setText("Message Box") msg.setStandardButtons(QMessageBox.OK | QMessageBox.Cancel) window.show() sys.exit(app.exec()) |
到此这篇关于10个杀手级应用的Python自动化脚本的文章就介绍到这了。
50G+学习视频教程
100+Python初阶、中阶、高阶电子书籍
点击拿去