25个自动化办公脚本合集(覆盖人工智能、数据处理、文档管理、图片处理、文件操作等)

发布于:2025-08-15 ⋅ 阅读:(12) ⋅ 点赞:(0)

A. 人工智能与聊天助手

1. AI 聊天机器人

功能:基于 OpenAI API 实现一个简单的命令行聊天机器人。

依赖安装

pip install openai

Python 示例代码

import openai

openai.api_key = "YOUR_API_KEY"

def chat():
    print("AI Chatbot 已启动,输入 'exit' 退出。")
    while True:
        user_input = input("你: ")
        if user_input.lower() == 'exit':
            break
        response = openai.ChatCompletion.create(
            model="gpt-3.5-turbo",
            messages=[{"role": "user", "content": user_input}]
        )
        print("AI:", response.choices[0].message.content.strip())

if __name__ == "__main__":
    chat()

2. 自动会议纪要生成器

功能:将音频文件转录为文本,并使用 GPT 生成会议总结。

依赖安装

pip install openai-whisper openai

Python 示例代码

import openai
import whisper

openai.api_key = "YOUR_API_KEY"

def transcribe_and_summarize(audio_path):
    model = whisper.load_model("base")
    result = model.transcribe(audio_path)
    transcription = result['text']
    
    summary = openai.ChatCompletion.create(
        model="gpt-3.5-turbo",
        messages=[
            {"role": "system", "content": "请将以下会议记录生成简短总结"},
            {"role": "user", "content": transcription}
        ]
    )
    return summary.choices[0].message.content.strip()

if __name__ == "__main__":
    print(transcribe_and_summarize("meeting.mp3"))

3. AI 校对与润色工具

功能:输入一段文字,自动进行语法检查和润色。

依赖安装

pip install openai

Python 示例代码

import openai

openai.api_key = "YOUR_API_KEY"

def proofread(text):
    prompt = f"请帮我校对以下文字并进行润色:\n{text}"
    response = openai.ChatCompletion.create(
        model="gpt-3.5-turbo",
        messages=[{"role": "user", "content": prompt}]
    )
    return response.choices[0].message.content.strip()

if __name__ == "__main__":
    original_text = "我今天去公司了,感到很高兴因为天气晴朗。"
    print(proofread(original_text))

B. 文件与数据处理

4. PDF 转 Excel

功能:将 PDF 表格提取并转换为 Excel 文件。

依赖安装

pip install tabula-py pandas openpyxl

Python 示例代码

import tabula
import pandas as pd

def pdf_to_excel(pdf_path, excel_path):
    dfs = tabula.read_pdf(pdf_path, pages='all', multiple_tables=True)
    with pd.ExcelWriter(excel_path) as writer:
        for i, df in enumerate(dfs):
            df.to_excel(writer, sheet_name=f'Sheet{i+1}', index=False)

if __name__ == "__main__":
    pdf_to_excel("data.pdf", "output.xlsx")

5. CSV 敏感信息脱敏

功能:将 CSV 文件中的手机号、身份证号等替换为 ****

依赖安装

pip install pandas

Python 示例代码

import pandas as pd
import re

def mask_sensitive_info(csv_path, output_path):
    df = pd.read_csv(csv_path)
    for col in df.columns:
        df[col] = df[col].astype(str).apply(lambda x: re.sub(r'\d{3,}', '****', x))
    df.to_csv(output_path, index=False)

if __name__ == "__main__":
    mask_sensitive_info("input.csv", "masked.csv")

6. 批量重命名文件

功能:批量将文件夹中的文件重命名,支持添加前缀/后缀。

依赖安装

# 无需额外安装

Python 示例代码

import os

def batch_rename(folder, prefix="file_", suffix=""):
    for i, filename in enumerate(os.listdir(folder), start=1):
        old_path = os.path.join(folder, filename)
        ext = os.path.splitext(filename)[1]
        new_name = f"{prefix}{i}{suffix}{ext}"
        new_path = os.path.join(folder, new_name)
        os.rename(old_path, new_path)

if __name__ == "__main__":
    batch_rename("my_files", prefix="doc_")

7. 自动整理桌面文件

功能:根据文件类型自动分类到不同文件夹。

依赖安装

# 无需额外安装

Python 示例代码

import os
import shutil

def organize_desktop(path):
    for file in os.listdir(path):
        full_path = os.path.join(path, file)
        if os.path.isfile(full_path):
            ext = file.split('.')[-1].lower()
            folder = os.path.join(path, ext)
            os.makedirs(folder, exist_ok=True)
            shutil.move(full_path, folder)

if __name__ == "__main__":
    organize_desktop("C:/Users/YourName/Desktop")

8. Excel 数据自动合并

功能:合并一个文件夹下所有 Excel 表到一个总表中。

依赖安装

pip install pandas openpyxl

Python 示例代码

import pandas as pd
import os

def merge_excels(folder, output_file):
    all_data = []
    for file in os.listdir(folder):
        if file.endswith('.xlsx'):
            df = pd.read_excel(os.path.join(folder, file))
            all_data.append(df)
    merged = pd.concat(all_data, ignore_index=True)
    merged.to_excel(output_file, index=False)

if __name__ == "__main__":
    merge_excels("excel_folder", "merged.xlsx")

C. 图片与视频处理

9. 简单图片下载器

功能:批量下载给定 URL 列表中的图片到本地。

依赖安装

pip install requests

Python 示例代码

import requests
import os

def download_images(url_list, save_folder):
    os.makedirs(save_folder, exist_ok=True)
    for i, url in enumerate(url_list, start=1):
        img_data = requests.get(url).content
        with open(f"{save_folder}/image_{i}.jpg", 'wb') as f:
            f.write(img_data)

if __name__ == "__main__":
    urls = [
        "https://example.com/image1.jpg",
        "https://example.com/image2.jpg"
    ]
    download_images(urls, "downloaded_images")

10. 神奇照片编辑器(灰度 + 缩放)

功能:将图片转换为灰度并缩放到指定大小。

依赖安装

pip install pillow

Python 示例代码

from PIL import Image

def edit_image(image_path, output_path, size=(200, 200)):
    img = Image.open(image_path).convert('L')  # 灰度
    img = img.resize(size)
    img.save(output_path)

if __name__ == "__main__":
    edit_image("input.jpg", "output.jpg", (300, 300))

11. 图片批量加水印

功能:批量给图片添加文字水印。

依赖安装

pip install pillow

Python 示例代码

from PIL import Image, ImageDraw, ImageFont
import os

def add_watermark(folder, text):
    font = ImageFont.load_default()
    for file in os.listdir(folder):
        if file.lower().endswith((".jpg", ".png")):
            img = Image.open(os.path.join(folder, file))
            draw = ImageDraw.Draw(img)
            draw.text((10, 10), text, font=font, fill=(255, 0, 0))
            img.save(os.path.join(folder, f"wm_{file}"))

if __name__ == "__main__":
    add_watermark("images", "CONFIDENTIAL")

12. 视频转 GIF

功能:将视频文件转换为 GIF 动画。

依赖安装

pip install moviepy

Python 示例代码

from moviepy.editor import VideoFileClip

def video_to_gif(video_path, gif_path):
    clip = VideoFileClip(video_path)
    clip.write_gif(gif_path)

if __name__ == "__main__":
    video_to_gif("input.mp4", "output.gif")

D. 文档与文本处理

13. PDF 合并工具

功能:将多个 PDF 合并为一个。

依赖安装

pip install PyPDF2

Python 示例代码

from PyPDF2 import PdfMerger
import os

def merge_pdfs(folder, output_file):
    merger = PdfMerger()
    for file in os.listdir(folder):
        if file.endswith(".pdf"):
            merger.append(os.path.join(folder, file))
    merger.write(output_file)
    merger.close()

if __name__ == "__main__":
    merge_pdfs("pdf_folder", "merged.pdf")

14. 自动校对工具

功能:对文本拼写进行自动检查和修正。

依赖安装

pip install textblob
python -m textblob.download_corpora

Python 示例代码

from textblob import TextBlob

def correct_text(text):
    blob = TextBlob(text)
    return str(blob.correct())

if __name__ == "__main__":
    print(correct_text("Ths is a smple txt with errrs."))

15. URL 短链接生成器

功能:将长网址转换为短链接。

依赖安装

pip install pyshorteners

Python 示例代码

import pyshorteners

def shorten_url(url):
    s = pyshorteners.Shortener()
    return s.tinyurl.short(url)

if __name__ == "__main__":
    print(shorten_url("https://www.example.com/very/long/url"))

16. 文本转语音

功能:将文本内容转换为 mp3 音频文件。

依赖安装

pip install gTTS

Python 示例代码

from gtts import gTTS

def text_to_speech(text, filename):
    tts = gTTS(text)
    tts.save(filename)

if __name__ == "__main__":
    text_to_speech("你好,这是自动化脚本的测试。", "speech.mp3")

E. 网络与爬虫

17. 网页文章批量抓取

功能:抓取网页的主要内容并保存为 txt。

依赖安装

pip install requests beautifulsoup4

Python 示例代码

import requests
from bs4 import BeautifulSoup

def scrape_article(url, filename):
    html = requests.get(url).text
    soup = BeautifulSoup(html, 'html.parser')
    text = soup.get_text()
    with open(filename, "w", encoding="utf-8") as f:
        f.write(text)

if __name__ == "__main__":
    scrape_article("https://example.com", "article.txt")

18. 自动检测网页是否更新

功能:定时检查网页内容是否变化。

依赖安装

pip install requests

Python 示例代码

import requests
import time

def monitor_website(url, interval=60):
    last_content = None
    while True:
        content = requests.get(url).text
        if last_content and content != last_content:
            print("Website updated!")
        last_content = content
        time.sleep(interval)

if __name__ == "__main__":
    monitor_website("https://example.com", 10)

19. 自动批量下载 PDF

功能:爬取网页上的所有 PDF 并下载。

依赖安装

pip install requests beautifulsoup4

Python 示例代码

import requests
from bs4 import BeautifulSoup
import os

def download_pdfs(url, folder):
    os.makedirs(folder, exist_ok=True)
    html = requests.get(url).text
    soup = BeautifulSoup(html, 'html.parser')
    for link in soup.find_all('a', href=True):
        if link['href'].endswith('.pdf'):
            pdf_url = link['href']
            if not pdf_url.startswith('http'):
                pdf_url = url + pdf_url
            pdf_data = requests.get(pdf_url).content
            with open(os.path.join(folder, os.path.basename(pdf_url)), 'wb') as f:
                f.write(pdf_data)

if __name__ == "__main__":
    download_pdfs("https://example.com", "pdfs")

F. 办公自动化

20. 自动发送邮件

功能:自动发送带附件的邮件。

依赖安装

pip install yagmail

Python 示例代码

import yagmail

def send_email(user, password, to, subject, body, attachment=None):
    yag = yagmail.SMTP(user, password)
    yag.send(to=to, subject=subject, contents=body, attachments=attachment)

if __name__ == "__main__":
    send_email("you@example.com", "your_password", "friend@example.com", "Test", "This is an email", "file.txt")

21. 自动生成日报

功能:每天生成包含日期和工作内容的日报文件。

依赖安装

# 无需安装

Python 示例代码

from datetime import datetime

def create_daily_report(content):
    date_str = datetime.now().strftime("%Y-%m-%d")
    with open(f"日报_{date_str}.txt", "w", encoding="utf-8") as f:
        f.write(f"日期: {date_str}\n内容:\n{content}")

if __name__ == "__main__":
    create_daily_report("今天完成了自动化脚本的开发。")

22. Excel 自动生成图表

功能:从 Excel 数据生成图表并保存为 PNG。

依赖安装

pip install pandas matplotlib openpyxl

Python 示例代码

import pandas as pd
import matplotlib.pyplot as plt

def excel_to_chart(excel_file, output_img):
    df = pd.read_excel(excel_file)
    df.plot(kind='bar')
    plt.savefig(output_img)

if __name__ == "__main__":
    excel_to_chart("data.xlsx", "chart.png")

23. 批量转换图片格式

功能:批量将 JPG 转 PNG。

依赖安装

pip install pillow

Python 示例代码

from PIL import Image
import os

def batch_convert(folder):
    for file in os.listdir(folder):
        if file.endswith(".jpg"):
            img = Image.open(os.path.join(folder, file))
            img.save(os.path.join(folder, file.replace(".jpg", ".png")))

if __name__ == "__main__":
    batch_convert("images")

24. 自动备份文件夹

功能:将文件夹压缩为 zip 并保存。

依赖安装

# 无需安装

Python 示例代码

import shutil

def backup_folder(folder, output_zip):
    shutil.make_archive(output_zip, 'zip', folder)

if __name__ == "__main__":
    backup_folder("my_folder", "backup")

25. AI 聊天机器人(OpenAI API)

功能:基于 OpenAI API 的简单聊天机器人。

依赖安装

pip install openai

Python 示例代码

import openai

openai.api_key = "YOUR_API_KEY"

def chat_with_ai(prompt):
    response = openai.ChatCompletion.create(
        model="gpt-3.5-turbo",
        messages=[{"role": "user", "content": prompt}]
    )
    return response.choices[0].message['content']

if __name__ == "__main__":
    print(chat_with_ai("帮我写一个励志故事"))


网站公告

今日签到

点亮在社区的每一天
去签到