十个Python自动化脚本,提高办公效率

开发 前端
如果你想要一个免费AI聊天机器人,比如ChatGPT,可以使用这个Python 脚本,它利用了Gemini(谷歌AI),这是AI市场上最热门且智能的工具之一。Gemini为Pro版本提供每分钟60次请求的免费API访问。

今年人工智能在各个领域蓬勃发展,因此我们也必须将日常重复且耗时的手动任务转变为自动化。这篇文章将向你展示10个Python脚本,可用于实现工作的自动化。将这篇文章列入你的阅读清单,让我们开始吧。

目录

  1. 人工智能聊天机器人
  2. 制作网页应用程序
  3. 将PDF转换为Excel
  4. 制作通知器
  5. 神奇照片编辑器
  6. 制作校对工具
  7. 简单图像下载器
  8. URL短链接生成器
  9. 隐藏CSV模块
  10. 获取临时邮箱

1. 人工智能聊天机器人

如果你想要一个免费AI聊天机器人,比如ChatGPT,可以使用这个Python 脚本,它利用了Gemini(谷歌AI),这是AI市场上最热门且智能的工具之一。Gemini为Pro版本提供每分钟60次请求的免费API访问。

下面介绍如何使用Gemini创建你自己的AI聊天机器人,并与之聊天、生成文本、提问或分析照片等等。欢迎复制下面的代码。

# 聊天机器人 AI
# pip install google-generativeai
# pip install pillow

import google.generativeai as genai
from PIL import Image

# 设置 API 密钥
genai.configure(api_key='YOUR API KEY')

# 生成文本
model = genai.GenerativeModel('gemini-pro')
response = model.generate_content("给我一些有趣的周末计划列表")
print(response.text)

# 与 AI 聊天
chat = model.start_chat()
chat.send_message("Python 和 JavaScript 哪个更好?")
for m in chat.history:
    print(m.parts[0].text)

# 分析图像
model = genai.GenerativeModel('gemini-pro-vision')
img = Image.open('street.jpg')
response = model.generate_content(img)
print(response.text)

# 带文本分析图像
img = Image.open('NewYork_Street.jpg')
response = model.generate_content(["请告诉我确切位置", img])
print(response.text)

2. 制作网络应用程序

现在不需要HTML、CSS和JS,就可以通过Streamlit使用几行代码创建一个漂亮的网页应用。这个Python模块非常易用于照片编辑器、聊天机器人、作品集、图标生成器和图像生成器等网页应用。一定要试试下面的脚本。

可查看Streamlit应用库,看看其他开发者制作了什么。😎

# pip install streamlit
# import streamlit as st
def calculate(operation, num1, num2):
    if operation == '加':
        return num1 + num2
    elif operation == '减':
        return num1 - num2
    elif operation == '乘':
        return num1 * num2
    elif operation == '除':
        if num2 == 0:
            return "不能除以零"
        return num1 / num2

# Streamlit 应用
def webapp():
    st.title("简单计算器")
    num1 = st.number_input("输入第一个数字", value=0.0, format="%f")
    num2 = st.number_input("输入第二个数字", value=0.0, format="%f")
    operation = st.selectbox("选择操作", 
    ["加", "减", "乘", "除"])
    if st.button("计算"):
        result = calculate(operation, num1, num2)
        st.write(f"结果是: {result}")

webapp()

3. 将PDF转换为Excel

厌倦了从PDF复制表格和数据到Excel?那么使用下面的Python脚本将其自动化,它使用Openpyxl、Tabula和Pandas模块。Tabula是一个流行的模块,可以将任何类型的表格数据提取到CSV、Excel,甚至JSON。欢迎随意复制下面的代码。😉

# PDF 转 Excel
# pip install tabula-py
# pip install pandas
# pip install openpyxl
import tabula
import pandas as pd

# 读取 PDF 文件
filename = "myPDF.pdf"

# 将 PDF 转换为 Excel
df = tabula.read_pdf(filename, pages='all', multiple_tables=True)

# 保存 Excel
writer = pd.ExcelWriter('output.xlsx')
for i, table in enumerate(df):
    table.to_excel(writer, sheet_name=f'Sheet{i}', index=False)
writer.save()
print("PDF 转 Excel 转换完成!")

4. 制作通知器

你知道你可以制作自己想要的通知器吗?比如水分提醒通知器、雨天通知器,或者你最喜欢的产品打折通知器等等?下面的脚本制作了一个电池通知器,使用Plyer模块在任务栏提醒电池是否充满或降到特定百分比。

现在就制作你自己的通知器吧😄,如果有任何反馈请告诉我。

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

def getBatteryStatus():
    battery = psutil.sensors_battery()
    percent = battery.percent
    return percent

def Notifier(percent):
    if percent >= 80:
        notification.notify(
            title="电池充满",
            message="请拔掉充电器",
            timeout=10
        )
    elif percent <= 30:
        notification.notify(
            title="电池低电",
            message="请插上充电器",
            timeout=10
        )

if __name__ == "__main__":
    while True:
        percent = getBatteryStatus()
        Notifier(percent)
        time.sleep(60)

5. 神奇照片编辑器

如果你不想使用Photoshop进行小幅度的照片编辑,可使用下面的自动化脚本,它可以调整大小、模糊、翻转、裁剪、添加阴影和压缩等等。下面的代码使用了流行的Pillow模块,专门用于图像处理。使用Pillow可进行批量图像编辑,比如合并多张照片或调整大小和裁剪。

# Magic Photo Editor
# pip install pillow
from PIL import Image, ImageFilter
import os

def ResizeImage(image, size):
    image.resize(size, Image.ANTIALIAS)
    image.save("resized.jpg")

def RotateImage(image, angle):
    image.rotate(angle)
    image.save("rotated.jpg")

def CropImage(image, box):
    image.crop(box)
    image.save("cropped.jpg")

def FlipImage(image):
    image.transpose(Image.FLIP_LEFT_RIGHT)
    image.save("flipped.jpg")

def CompressImage(image, quality):
    image.save("compressed.jpg", quality=quality)

def BlurImage(image, radius):
    image.filter(ImageFilter.GaussianBlur(radius))
    image.save("blurred.jpg")

def GreyScaleImage(image):
    image.convert("L")
    image.save("greyscale.jpg")

def ConvertFormat(image, format):
    image.save("converted." + format, format)

def Add_Shadow(image, offset, background_color):
    image.filter(ImageFilter.BoxBlur(offset))
    image.save("shadow.jpg")

def SharpenImage(image, factor):
    image.filter(ImageFilter.SHARPEN)
    image.save("sharpened.jpg")

if __name__ == "__main__":
    image = Image.open("photo.jpg")
    ResizeImage(image, (100, 100))
    RotateImage(image, 90)
    CropImage(image, (0, 0, 100, 100))
    FlipImage(image)
    CompressImage(image, 50)
    BlurImage(image, 10)
    GreyScaleImage(image)
    ConvertFormat(image, "png")
    Add_Shadow(image, 10, "black")
    SharpenImage(image, 2)

6.  制作校对工具

你可以使用Python制作自己的校对软件。这个自动化脚本使用Language_tool模块,这是一个LanguageTool语法检查网站的封装。这个模块非常适合修正文本的语法错误和拼写错误。当你有长文本或多个文本或文档文件需要校对时,它非常方便。

# pip install language-tool-python
# 校对工具
import language_tool_python

# 设置语言
tool = language_tool_python.LanguageTool('en-US')

# 校对文本
text = 'The smill of fliwers is good'
matches = tool.check(text)

# 获取错误
for mistake in matches:
    print(mistake)

# 更正文本
correction = tool.correct(text)
print(correction)

7. 简单图像下载器

需要一个脚本来节省你寻找和下载图像的时间吗?这个自动化脚本使用Simple_image_download模块,让你可以轻松下载100张图像,任何关键字都可以。

# 自动照片下载器
# pip install simple_image_download
from simple_image_download import simple_image_download

def Download_Images(keyword, no_of_images = 1):
    simp = simple_image_download.Downloader()
    simp.download(keyword, no_of_images)
    print("图像已下载")

if __name__ == "__main__":
    Download_Images("猫")

8. URL 短链接生成器

如果有大量需要缩短的链接和URL,可以使用下面的自动化脚本编程,该脚本使用Pyshorteners模块,它使用TinyURL开源API将您的URL转换为可与任何人共享的短网址。

# URL 短链接生成器
# pip install pyshorteners
import pyshorteners

def Shortner(Link):
    req = pyshorteners.Shortener()
    short = req.tinyurl.short(Link)
    print("缩短的 URL: ", short)
    return short

if __name__ == "__main__":
    Link = input("输入 URL: ")
    Shortner(Link)

9. 隐藏CSV模块

不想使用Pandas读取和写入CSV?没关系,使用Python内置的最快CSV模块,它可让你读取、写入和追加CSV数据。下面附上可直接使用的示例代码。

import csv

# 读取 CSV 文件
filename = "test.csv"
with open(filename, 'r') as csvfile:
    csvreader = csv.reader(csvfile)
    for row in csvreader:
        print(row)

# 追加到 CSV 文件
rows = [['John', '作者', '1', '9.5']]
with open(filename, 'a') as csvfile:
    csvwriter = csv.writer(csvfile)
    csvwriter.writerows(rows)

# 写入 CSV 文件
fields = ['姓名', '专业', '年级', 'CGPA']
rows = [['Haider', '作家', '3', '9.3']]
filename = "test.csv"
with open(filename, 'w') as csvfile:
    csvwriter = csv.writer(csvfile)
    csvwriter.writerow(fields)
    csvwriter.writerows(rows)

10. 获取临时邮箱

如果你想要找一个需要登录的网站,但出于安全考虑,你不想提供自己的邮箱地址,因为害怕收到促销信息和被跟踪。这种情况下就可以使用下面的Python 脚本为你生成一个临时邮箱,用于注册网站。

# 获取临时邮箱
# pip install tempmail-lol
from TempMail import TempMail

mail = TempMail()
# 登录你的临时邮箱
inb = TempMail("输入 24 位 ID", "输入 32 或 36 位 Token")
# 创建新的临时邮箱
email = TempMail.generateInbox(mail)
print(email)
# 检查邮件
inb = TempMail.getEmails(mail, inbox=email)
print(inb)

总结

这些Python脚本展现了Python在自动化日常任务上的多功能性。将它们融入你的工作流程,可以提升效率、节省时间,并减轻重复劳动的压力。不妨探索这些自动化脚本,看看Python如何简化你的生活。

责任编辑:武晓燕 来源: Python学研大本营
相关推荐

2024-12-10 07:15:00

2024-06-21 10:46:44

2024-08-14 14:42:00

2024-12-10 00:01:00

自动化脚本优化

2024-07-01 18:07:30

Python脚本自动化

2022-05-07 14:08:42

Python自动化脚本

2022-10-09 14:50:44

Python脚本

2021-04-23 22:44:57

Python开发办公自动化

2022-07-27 08:01:28

自动化DevOps

2024-08-19 10:21:37

接口Python魔法方法

2024-05-13 16:29:56

Python自动化

2022-07-05 14:00:49

编排工具自动化

2023-09-21 22:56:32

插件开发

2018-08-08 09:00:00

UNIXLinux命令

2023-10-13 12:56:23

工作效率VS Code技巧

2023-10-27 18:11:42

插件Postman代码

2023-09-07 10:21:03

VS Code 技巧提高开发效率

2024-03-17 20:01:51

2024-08-16 21:14:36

2021-07-09 07:24:47

Python自动化办公
点赞
收藏

51CTO技术栈公众号