分享几个 Python 自动脚本

今天分享几个 Python 自动脚本,希望对你有帮助。

图片

你是否厌倦了花费无数小时来处理讨厌的垃圾文件和重复性任务?

其实你可以舒舒服服的坐下来,放松心情,看着 Python 为你完成你的工作。

在这篇文章中,我们将探讨一些 Python 自动化脚本,帮助你优化日常任务,节省宝贵的时间。

以下是一些有趣的例子,展示如何使用这些Python自动化脚本来自动化你的琐碎任务:

1,图像优化

只需一键,这个 Python 自动化脚本就能让你轻松地像专业人士一样优化和操纵你的图片,无需昂贵的软件或复杂的编辑工具。

该脚本利用了流行的 Pillow 模块来优化图像。它使用 Python Imaging Library (PIL) 来裁剪、调整大小、翻转、旋转、压缩、模糊、锐化、调整亮度、对比度,并向图像添加滤镜。

# 图像优化
from PIL import Image, ImageFilter, ImageOps, ImageEnhance

# 加载图像
im = Image.open("Image1.jpg")

# 裁剪图像
im = im.crop((34, 23, 100, 100))

# 调整图像大小
im = im.resize((50, 50))

# 水平翻转图像
im = im.transpose(Image.FLIP_LEFT_RIGHT)

# 旋转图像360度
im = im.rotate(360)

# 压缩图像
im.save("Image1.jpg", optimize=True, quality=90)

# 应用模糊效果
im = im.filter(ImageFilter.BLUR)

# 应用锐化效果
im = im.filter(ImageFilter.SHARPEN)

# 调整亮度
enhancer = ImageEnhance.Brightness(im)
im = enhancer.enhance(1.5)

# 调整对比度
enhancer = ImageEnhance.Contrast(im)
im = enhancer.enhance(1.5)

# 添加滤镜
im = ImageOps.grayscale(im)
im = ImageOps.invert(im)
im = ImageOps.posterize(im, 4)

# 保存优化后的图像
im.save("Image1.jpg")

2,视频优化

这个脚本可用于压缩视频以节省存储空间或传输,或者用于改善视频质量。

该脚本利用了 Moviepy 模块通过剪辑、改变速度、添加音频以及应用视觉效果(VFX)来优化视频。

它使用moviepy库来剪辑、加速、添加音频、倒转、合并、添加VFX以及向视频中添加图像。

# 视频优化器
import moviepy.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])

# 为视频添加VFX
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")

3,定时发送邮件

这是一个强大的Python自动化脚本,可以让你在特定时间自动安排和发送电子邮件。借助这个脚本,你可以告别手动发送电子邮件。

该脚本允许你在特定时间自动安排和发送电子邮件,使用了 smtplib 和 schedule 模块。

# 电子邮件定时发送器
import smtplib
import schedule
import time

def send_email():
    sender_email = "your_email@gmail.com"
    receiver_email = "recipient_email@gmail.com"
    password = "your_email_password"

    subject = "自动化邮件"
    body = "这是使用Python发送的自动化邮件。"

    message = f"Subject: {subject}\n\n{body}"

    with smtplib.SMTP_SSL("smtp.gmail.com", 465) as server:
        server.login(sender_email, password)
        server.sendmail(sender_email, receiver_email, message)

# 定时每天早上8点发送邮件
schedule.every().day.at("08:00").do(send_email)

while True:
    schedule.run_pending()
    time.sleep(1)

4,将PDF转换为图像

将 PDF 转换为图像是各行业中常见的任务,从文档处理到图形设计都有涉及。有时你可能需要从 PDF 中提取单个页面,或将整个文档转换为图像格式以进行进一步的处理或显示。

该脚本使用 PyMuPD F模块轻松将 PDF 页面转换为图像。

# PDF转换为图像
import fitz

def pdf_to_images(pdf_file):
    doc = fitz.open(pdf_file)
    for page in doc:
        pix = page.get_pixmap()
        output = f"page{page.number}.png"
        pix.writePNG(output)

pdf_to_images("test.pdf")

5,获取 API 数据

在当今数字时代,我们依赖各种网络服务来获取有价值的信息,但手动获取数据可能会耗费时间。该脚本演示了如何使用urllib3模块执行GET和POST请求来获取API数据。

# 获取API数据
import urllib3

# 使用GET请求获取API数据
url = "https://api.github.com/users/psf/repos"
http = urllib3.PoolManager()
response = http.request('GET', url)
print("状态码:", response.status)
print("响应数据:", response.data)

# 使用POST请求发布API数据
url = "https://httpbin.org/post"
http = urllib3.PoolManager()
response = http.request('POST', url, fields={'hello': 'world'})
print("状态码:", response.status)

6,电池指示

这个脚本可以确保在涉及设备电池寿命时你永远不会错过任何重要信息。

使用这个方便的工具,你可以设置一个特定的电池百分比阈值,脚本将密切关注你电池的电量。

该脚本使用 plyer 和 psutil 模块,在电池百分比较低时通知用户。

# 电池通知器
from plyer import notification
import psutil
from time import sleep

while True:
    battery = psutil.sensors_battery()
    life = battery.percent

    if life < 50:
        notification.notify(
            title="电池低电量",
            message="请连接电源",
            timeout=10
        )
    sleep(50)

7,使用Pytest进行自动化测试

自动化测试是现代软件开发的关键方面,它使开发人员能够验证其代码、捕获错误并确保应用程序的可靠性。在 Python 领域,有一个强大且用户友好的测试框架脱颖而出:Pytest。

该脚本演示了如何使用pytest框架执行自动化测试以测试Python代码。

# 使用Pytest进行自动化测试
import pytest

# 待测试的函数
def add_numbers(x, y):
    return x + y

# 函数的测试用例
def test_addition():
    assert add_numbers(1, 2) == 3
    assert add_numbers(-1, 1) == 0
    assert add_numbers(0, 0) == 0
    assert add_numbers(10, 5) == 15

if __name__ == "__main__":
    pytest.main()

8,文件备份与同步

文件备份与同步脚本是一个强大的 Python 自动化工具,旨在简化文件管理并确保文件的安全性。

这个脚本提供了一个简单而有效的解决方案。该脚本会自动备份和同步两个目录之间的文件,确保两个位置具有相同的内容。

# 文件备份与同步脚本
import os
import shutil

def backup_and_sync(source_folder, backup_folder):
    for root, _, files in os.walk(source_folder):
        for file in files:
            source_path = os.path.join(root, file)
            backup_path = os.path.join(backup_folder, root.replace(source_folder, ""), file)

            # 如果备份文件夹中的目录不存在,则创建
            os.makedirs(os.path.dirname(backup_path), exist_ok=True)

            # 将文件复制到备份文件夹
            shutil.copy2(source_path, backup_path)

    # 删除备份文件夹中在源文件夹中不存在的文件
    for root, _, files in os.walk(backup_folder):
        for file in files:
            backup_path = os.path.join(root, file)
            source_path = os.path.join(source_folder, root.replace(backup_folder, ""), file)

            if not os.path.exists(source_path):
                os.remove(backup_path)

source_folder = "path/to/source/folder"
backup_folder = "path/to/backup/folder"

backup_and_sync(source_folder, backup_folder)

关于Python学习指南

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后给大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、自动化办公等学习教程。带你从零基础系统性的学好Python!

👉Python所有方向的学习路线👈

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取)

在这里插入图片描述

👉Python学习视频600合集👈

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

在这里插入图片描述

温馨提示:篇幅有限,已打包文件夹,获取方式在:文末

👉Python70个实战练手案例&源码👈

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

👉Python大厂面试资料👈

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

在这里插入图片描述

在这里插入图片描述

👉Python副业兼职路线&方法👈

学好 Python 不论是就业还是做副业赚钱都不错,但要学会兼职接单还是要有一个学习规划。

在这里插入图片描述

👉 这份完整版的Python全套学习资料已经上传,朋友们如果需要可以扫描下方CSDN官方认证二维码或者点击链接免费领取保证100%免费

  • 15
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值