写点什么

10 个杀手级的 Python 自动化脚

作者:千锋IT教育
  • 2022-11-30
    北京
  • 本文字数:3957 字

    阅读完需:约 13 分钟

重复性任务总是耗时且无聊,想一想你想要一张一张地裁剪 100 张照片或 Fetch API、纠正拼写和语法等工作,所有这些任务都很耗时,为什么不自动化它们呢?在今天的文章中,我将与你分享 10 个 Python 自动化脚本。

所以,请你把这篇文章放在你的收藏清单上,以备不时之需,在 IT 行业里,程序员的学习永无止境……

现在,让我们开始吧。

01、 图片优化器

使用这个很棒的自动化脚本,可以帮助把图像处理的更好,你可以像在 Photoshop 中一样编辑它们。

该脚本使用流行的是 Pillow 模块,你可以在下面找到优化图像所需的大部分方法。

在你的图像编辑项目中使用

在你的 Python 项目中使用它

批量图像编辑

更多

# Image Optimizing# pip install Pillowimport PIL# Croping im = PIL.Image.open("Image1.jpg")im = im.crop((34, 23, 100, 100))# Resizingim = PIL.Image.open("Image1.jpg")im = im.resize((50, 50))# Flippingim = PIL.Image.open("Image1.jpg")im = im.transpose(PIL.Image.FLIP_LEFT_RIGHT)# Rotatingim = PIL.Image.open("Image1.jpg")im = im.rotate(360)# Compressingim = PIL.Image.open("Image1.jpg")im.save("Image1.jpg", optimize=True, quality=90)# Bluringim = PIL.Image.open("Image1.jpg")im = im.filter(PIL.ImageFilter.BLUR)# Sharpeningim = PIL.Image.open("Image1.jpg")im = im.filter(PIL.ImageFilter.SHARPEN)# Set Brightnessim = PIL.Image.open("Image1.jpg")im = PIL.ImageEnhance.Brightness(im)im = im.enhance(1.5)# Set Contrastim = PIL.Image.open("Image1.jpg")im = PIL.ImageEnhance.Contrast(im)im = im.enhance(1.5)# Adding Filtersim = PIL.Image.open("Image1.jpg")im = PIL.ImageOps.grayscale(im)im = PIL.ImageOps.invert(im)im = PIL.ImageOps.posterize(im, 4)# Savingim.save("Image1.jpg")复制代码
复制代码

02、视频优化器

通过使用以下自动化脚本,你不仅可以使用 Python 来优化视频,还可以使用它来优化图像。该脚本使用 Moviepy 模块,允许你修剪、添加音频、设置视频速度、添加 VFX 等等。

创建完整的视频编辑器

在你的 Python 项目中使用

修剪视频

从图像制作视频

更多

# Video Optimizer# pip install moviepyimport moviepy.editor as pyedit# Load the Videovideo = pyedit.VideoFileClip("vid.mp4")# Trimmingvid1 = video.subclip(0, 10)vid2 = video.subclip(20, 40)final_vid = pyedit.concatenate_videoclips([vid1, vid2])# Speed up the videofinal_vid = final_vid.speedx(2)# Adding Audio to the videoaud = pyedit.AudioFileClip("bg.mp3")final_vid = final_vid.set_audio(aud)# Reverse the Videofinal_vid = final_vid.fx(pyedit.vfx.time_mirror)# Merge two videosvid1 = pyedit.VideoFileClip("vid1.mp4")vid2 = pyedit.VideoFileClip("vid2.mp4")final_vid = pyedit.concatenate_videoclips([vid1, vid2])# Add VFX to Videovid1 = final_vid.fx(pyedit.vfx.mirror_x)vid2 = final_vid.fx(pyedit.vfx.invert_colors)final_vid = pyedit.concatenate_videoclips([vid1, vid2])# Add Images to Videoimg1 = pyedit.ImageClip("img1.jpg")img2 = pyedit.ImageClip("img2.jpg")final_vid = pyedit.concatenate_videoclips([img1, img2])# Save the videofinal_vid.write_videofile("final.mp4")复制代码
复制代码

03、PDF 转图片

这个小型自动化脚本可以方便地获取整个 PDF 页面并将它们转换为图像。该脚本使用流行的 PyMuPDF 模块,该模块以其 PDF 文本提取而闻名。

在你的 PDF 项目中使用它

批量 PDF 到图像

更多

# PDF to Images# pip install PyMuPDFimport fitzdef pdf_to_images(pdf_file):    doc = fitz.open(pdf_file)    for p in doc:        pix = p.get_pixmap()        output = f"page{p.number}.png"        pix.writePNG(output)pdf_to_images("test.pdf")复制代码
复制代码

04、获取 API 数据

需要从数据库中获取 API 数据或需要向服务器发送 API 请求。那么这个自动化脚本对你来说是一个方便的工具。使用 Urllib3 模块,可让你获取和发布 API 请求。

# pip install urllib3import urllib3# Fetch API dataurl = "https://api.github.com/users/psf/repos"http = urllib3.PoolManager()response = http.request('GET', url)print(response.status)print(response.data)# Post API dataurl = "https://httpbin.org/post"http = urllib3.PoolManager()response = http.request('POST', url, fields={'hello': 'world'})print(response.status)复制代码
复制代码

05、电池指示灯

这个方便的脚本可以让你设置你想要得到通知的电池百分比,该脚本使用 Pyler 进行通知,使用 Psutil 获取当前的电池百分比。

# Battery Notifier# pip instal plyerfrom plyer import notificationimport psutilfrom time import sleepwhile True:    battery = psutil.sensors_battery()    life = battery.percent    if life < 50:        notification.notify(            title = "Battery Low",            message = "Please connect to power source",            timeout = 10        )    sleep(60)复制代码
复制代码

06、语法固定器

厌倦了校对你的长文章或文本,然后,你可以试试这个自动化脚本,它将扫描你的文本并纠正语法错误,这个很棒的脚本使用 Happtransformer 模块,这是一个机器学习模块,经过训练可以修复文本中的语法错误。

# Grammer Fixer# pip install happytransformerfrom happytransformer import HappyTextToText as HappyTTTfrom happytransformer import TTSettingsdef Grammer_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、拼写修正

这个很棒的脚本将帮助你纠正你的文本单词拼写错误。你可以在下面找到脚本,将告诉你如何修复句子中的单个单词或多个单词。

# Spell Fixer# pip install textblobfrom textblob import *# Fixing Paragraph Spellsdef fix_paragraph_words(paragraph):    sentence = TextBlob(paragraph)    correction = sentence.correct()    print(correction)# Fixing Words Spellsdef fix_word_spell(word):    word = Word(word)    correction = word.correct()    print(correction)fix_paragraph_words("This is sammple tet!!")fix_word_spell("maangoo")复制代码
复制代码

08、互联网下载器

你们可能使用下载软件从 Internet 下载照片或视频,但现在你可以使用 Python IDM 模块创建自己的下载器。

下载 Google 相册

在你的项目中使用

下载视频和音乐

更多

# Python Downloader# pip install internetdownloadmanagerimport internetdownloadmanager as idmdef Downloader(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 篇新闻文章。

# World News Fetcher# pip install requestsimport requestsApiKey = "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 应用程序。你可以在下面找到开始开发体面的现代应用程序所需的每种方法。

PySide2 还支持跨平台,对开发人员非常友好,请查看下面的代码。

# PySide 2 # pip install PySide2from PySide6.QtWidgets import *from PySide6.QtGui import *import sysapp = QApplication(sys.argv)window = QWidget()# Resize the Windowwindow.resize(500, 500)# Set the Window Titlewindow.setWindowTitle("PySide2 Window")# Add Buttonsbutton = QPushButton("Click Me", window)button.move(200, 200)# Add Label Textlabel = QLabel("Hello Medium", window)label.move(200, 150)# Add Input Boxinput_box = QLineEdit(window)input_box.move(200, 250)print(input_box.text())# Add Radio Buttonsradio_button = QRadioButton("Radio Button", window)radio_button.move(200, 300)# Add Checkboxcheckbox = QCheckBox("Checkbox", window)checkbox.move(200, 350)# Add Sliderslider = QSlider(window)slider.move(200, 400)# Add Progress Barprogress_bar = QProgressBar(window)progress_bar.move(200, 450)# Add Image image = QLabel(window)image.setPixmap(QPixmap("image.png"))# Add Message Boxmsg = QMessageBox(window)msg.setText("Message Box")msg.setStandardButtons(QMessageBox.Ok | QMessageBox.Cancel)window.show()sys.exit(app.exec())复制代码
复制代码

最后的想法

今天这篇文章内容就到这里了,我希望你能为你的下一个开发项目找到一些有用的自动化脚本。

用户头像

国内IT培训机构良心品牌 2022-08-02 加入

学习资料下载获取,添加QQ:3547925594

评论

发布
暂无评论
10 个杀手级的 Python 自动化脚_千锋IT教育_InfoQ写作社区