Python 自动化办公助手:提高工作效率的代码示例
以下是一个示例的自动化办公助手程序的 Python 代码:
import os
import shutil
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.header import Header
from openpyxl import load_workbook
from openpyxl.styles import Font
from docx import Document
def send_email(sender, password, receiver, subject, content):
# 设置邮件内容
message = MIMEMultipart()
message['From'] = Header(sender, 'utf-8')
message['To'] = Header(receiver, 'utf-8')
message['Subject'] = Header(subject, 'utf-8')
message.attach(MIMEText(content, 'plain', 'utf-8'))
# 连接邮件服务器并发送邮件
try:
smtpObj = smtplib.SMTP('smtp.163.com')
smtpObj.login(sender, password)
smtpObj.sendmail(sender, receiver, message.as_string())
print("邮件发送成功")
except smtplib.SMTPException:
print("邮件发送失败")
def process_excel(file_path, sheet_name):
# 打开Excel文件并选择工作表
wb = load_workbook(file_path)
sheet = wb[sheet_name]
# 读取单元格数据
value = sheet['A1'].value
print("A1单元格的值:", value)
# 修改单元格数据
sheet['A1'] = "Hello World"
sheet['A1'].font = Font(bold=True)
# 保存修改后的Excel文件
wb.save(file_path)
print("Excel文件处理完成")
def process_word(file_path):
# 打开Word文件
doc = Document(file_path)
# 读取段落内容
for paragraph in doc.paragraphs:
print(paragraph.text)
# 修改段落内容
doc.paragraphs[0].text = "Hello World"
# 保存修改后的Word文件
doc.save(file_path)
print("Word文件处理完成")
def organize_folder(folder_path, file_extension):
# 遍历文件夹中的所有文件
for file_name in os.listdir(folder_path):
# 获取文件的完整路径
file_path = os.path.join(folder_path, file_name)
# 判断文件是否符合指定的扩展名
if file_name.endswith(file_extension):
# 创建目标文件夹,如果不存在的话
target_folder = os.path.join(folder_path, file_extension)
if not os.path.exists(target_folder):
os.mkdir(target_folder)
# 移动文件到目标文件夹
shutil.move(file_path, target_folder)
print("文件移动成功")
else:
print("文件不符合指定的扩展名")
# 主程序
def main():
while True:
print("请选择要执行的自动化办公功能:")
print("1. 自动发送电子邮件")
print("2. 自动处理Excel表格")
print("3. 自动处理Word文档")
print("4. 自动整理文件夹")
print("0. 退出程序")
choice = input("请输入功能对应的数字:")
if choice == "1":
sender = input("请输入发件人邮箱:")
password = input("请输入发件人邮箱密码:")
receiver = input("请输入收件人邮箱:")
subject = input("请输入邮件主题:")
content = input("请输入邮件内容:")
send_email(sender, password, receiver, subject, content)
elif choice == "2":
file_path = input("请输入Excel文件路径:")
sheet_name = input("请输入工作表名称:")
process_excel(file_path, sheet_name)
elif choice == "3":
file_path = input("请输入Word文件路径:")
process_word(file_path)
elif choice == "4":
folder_path = input("请输入文件夹路径:")
file_extension = input("请输入文件扩展名:")
organize_folder(folder_path, file_extension)
elif choice == "0":
break
else:
print("输入无效,请重新输入。")
if __name__ == '__main__':
main()
这个示例代码实现了自动发送电子邮件、自动处理Excel表格、自动处理Word文档和自动整理文件夹等功能。学生可以根据自己的需求进行功能的扩展和优化。编写代码前,建议先安装所需的第三方库,如openpyxl和python-docx,使用pip install openpyxl和pip install python-docx命令进行安装。
原文地址: https://www.cveoy.top/t/topic/qkax 著作权归作者所有。请勿转载和采集!