分享4个Python中的非常好用的自动化脚本

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

分享4个Python中的非常好用的自动化脚本

川川菜鸟   2022-11-07 我要评论

这里有一些很棒的自动化脚本,你可以在你的 Python 项目中使用它们。在做项目的时候,我们需要一些现成的代码来帮助我们解决日常生活中的问题。本文为你的 Python 项目提供了4个自动化脚本,可以解决这些问题。

照片压缩器

这会将您的照片压缩成较小的尺寸,而j尽量的保证质量相同。

from PIL import Image
from tkinter.filedialog import *
fl=askopenfilenames()  # 打开文件夹
img = Image.open(fl[0]) 
img.save("result.jpg", "JPEG", optimize = True, quality = 100)

图片水印

这个简单的脚本将为任何图像添加水印。你可以设置文本、位置和字体。

from PIL import Image
from PIL import ImageDraw, ImageFont


def watermark_img(img_path, res_path, text, pos):
    font = ImageFont.truetype("简启体.TTF", 20)
    img = Image.open(img_path)
    wm = ImageDraw.Draw(img)
    wm.text(pos, text, align='center', font=font, fill='red')
    img.show()
    img.save(res_path)


img = '4.png'
watermark_img(img, 'result2.jpg', '川川菜鸟', pos=(5, 5))

如下:

抄袭检查器

此脚本检查两个文件之间的抄袭。首先我创建一个word文件如下:

第二个文件如下,我只改变的数字:

脚本如下:

from difflib import SequenceMatcher

f1 = input("输入文件一的路径: ")
f2 = input("输入文件二的路径: ")

def plagiarism_checker(f1, f2):
    with open(f1, errors="ignore") as file1, open(f2, errors="ignore") as file2:
        f1_data = file1.read()
        f2_data = file2.read()
        res = SequenceMatcher(None, f1_data, f2_data).ratio()
        print("两个文件相似度为:",res)

plagiarism_checker(f1, f2)

测试结果:

文件加解密

一个可以加密/解密任何文件的小脚本。先编写解密和加密函数。

from cryptography.fernet import Fernet
import re
# 加密
def encrypt(f_name, key):
    fernet = Fernet(key)

    with open(f_name, 'rb') as file:
        original = file.read()

    encrypted = fernet.encrypt(original)

    with open(f_name, 'wb') as enc_file:
        enc_file.write(encrypted)

# 解密
def decrypt(f_name, key):
    fernet = Fernet(key)

    with open(f_name, 'rb') as enc_file:
        encrypted = enc_file.read()

    decrypted = fernet.decrypt(encrypted)
    with open(f_name, 'wb') as dec_file:
        dec_file.write(decrypted)

执行加密函数:

# 加密部分  每次密码都是不同,所以保存起来,免得解密失败
key = Fernet.generate_key()
with open('加密的密码.txt', 'w') as f:
    f.write(str(key))
    f.close()
f_name = input("Enter Your filename: ")
encrypt(f_name, key) # 执行加密

首先我执行加密函数,对1.docx加密,我再去打开它是一片空白:

打开保存的密码如下:

b'b3LaZZPrLeQFtN8JYUfz3n_uWntQ0x0zH0i5-9hzBLU='

执行解密:

f_name2 =input("Enter Your filename: ")
key2=open('加密的密码.txt').read()
secret = re.findall(r'[\'](.*?)[\']',key2)[0] # 通过正则匹配出密码内容
decrypt(f_name2, secret ) # 执行解密

执行后就能再打开了。

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们