Windows Server 开启文件共享服务

本着一个原则: 项目上需要用的,就是需要我们知道的。

按照以下的步骤点击

  • windows server 服务管理器
  • 右上角(工具)
  • Internet Information Service(IIS)管理器
  • ​​网站​​ → ​​添加 FTP 站点
  • IP 地址:默认 全部未分配 用*表示全配置;端口:22(或自定义如 21001)。
  • SSL:若无证书选 ​​无 SSL​​;需加密则选 ​​允许 SSL​​ 并绑定证书。
  • ​​身份验证​​:勾选 ​​基本​​(需用户名密码)。
  • ​​授权​​:选择 ​​指定用户​​(输入 ftpuser)→ 权限勾选 ​​读取​​ 和 ​​写入

除此之外不要忘记防火墙放行22端口。

我们想用Python读取FTP中的文件:

from ftplib import FTP
import os

"""
获取FTP服务器上的文件

"""

# FTP服务器信息
ftp_server = "192.168.1.7"
port = 22
username = "admin"
password = "123456"

# 目标文件路径
remote_file_path = "/2025-05-30/0530164949798F189341837674.pdf"
local_file_path = "0530164949798F189341837674.pdf"  # 保存到本地的文件名

# 连接FTP服务器
ftp = FTP()
try:
    # 连接到服务器
    ftp.connect(ftp_server, port)
    # 登录
    ftp.login(username, password)
    print("成功连接到FTP服务器")

    # 列出根目录下的所有文件和文件夹
    # print("根目录内容:")
    # ftp.dir()

    possible_paths = [
        "/"
    ]
    
    for path in possible_paths:
        try:
            print(f"\n尝试访问目录: {path}")
            ftp.cwd(path)
            print("目录内容:")
            ftp.dir()
        except Exception as e:
            print(f"无法访问 {path}: {e}")
    
    # 下载文件
    with open(local_file_path, 'wb') as local_file:
        ftp.retrbinary(f'RETR {remote_file_path}', local_file.write)
    
    print(f"文件已成功下载到: {local_file_path}")

except Exception as e:
    print(f"发生错误: {e}")
finally:
    # 关闭连接
    try:
        ftp.quit()
    except:
        pass

最后,如果项目经理让你读取文件二进制并写入数据库,这样的需求,最好不要贸然行动,因为数据库存储的二进制文件可能存在加密的情况。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值