python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python自动化脚本

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

作者:川川菜鸟

这篇文章为大家准备了4个很棒的Python自动化脚本,可以解决这些问题。文中的示例代码讲解详细,具有一定的借鉴价值,需要的可以参考一下

这里有一些很棒的自动化脚本,你可以在你的 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 ) # 执行解密

执行后就能再打开了。

到此这篇关于分享4个Python中的非常好用的自动化脚本的文章就介绍到这了,更多相关Python自动化脚本内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文