这是一个简单的 Python 程序,用于生成文本文件并上传至 FTP 服务器;
通过输入文件名和内容,你可以将文档上传至指定的 FTP 服务器目录中;
在上传成功后,程序会自动关闭窗口。
使用方法
输入文件名和内容。
点击“生成并上传”按钮。
等待上传成功提示,窗口将在3秒后自动关闭。
下面是完整的 Python 代码:
import tkinter as tk # 导入 tkinter 模块,并使用简称 tk
from ftplib import FTP # 导入 FTP 模块
from tkinter import messagebox # 导入 messagebox 模块
import os # 导入 os 模块,用于操作文件和目录
def generate_txt_file(): # 定义生成并上传文档的函数
filename = filename_entry.get() # 获取文件名输入框的值
content = content_entry.get("1.0", "end-1c") # 获取内容输入框中的所有文字
log_folder = "LOG" # 定义日志目录名称
if not os.path.exists(log_folder): # 如果日志目录不存在,则创建它
os.makedirs(log_folder)
filepath = os.path.join(log_folder, filename + ".txt") # 拼接文件路径
with open(filepath, 'w') as file: # 打开文件,并写入内容
file.write(content)
ftp = FTP('192.168.10.2') # 连接 FTP 服务器地址
ftp.login('test', 'hubingjiatest') # 登录 FTP 服务器
ftp.cwd('/FW1/') # 切换到指定的目录
with open(filepath, 'rb') as file: # 以二进制模式打开文件,并上传至服务器
try:
ftp.storbinary('STOR ' + filename + ".txt", file) # 上传文件
print("文件上传成功!")
except Exception as e:
print("文件上传失败:", e)
ftp.quit() # 关闭 FTP 连接
messagebox.showinfo("Success", "文件已上传至FTP服务器") # 提示上传成功
root.after(3000, root.destroy) # 等待3秒后关闭窗口
root = tk.Tk() # 创建 Tkinter 窗口
root.title("生成并上传文档") # 设置窗口标题
filename_label = tk.Label(root, text="文件名:") # 创建文件名标签
filename_label.pack() # 将标签添加到窗口中
filename_entry = tk.Entry(root) # 创建文件名输入框
filename_entry.pack() # 将输入框添加到窗口中
content_label = tk.Label(root, text="内容:") # 创建内容标签
content_label.pack() # 将标签添加到窗口中
content_entry = tk.Text(root, height=10, width=50) # 创建内容输入框
content_entry.pack() # 将输入框添加到窗口中
generate_button = tk.Button(root, text="生成并上传", command=generate_txt_file) # 创建生成并上传按钮
generate_button.pack() # 将按钮添加到窗口中
root.mainloop() # 运行 Tkinter 窗口主循环,等待用户交互事件