使用Python生成并上传文档

这是一个简单的 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 窗口主循环,等待用户交互事件
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bingjia_Hu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值