安装pysmb
pip install pysmb
我安装的是1.2.7
使用pysmb
from smb.SMBConnection import SMBConnection
# 与samba服务器建立连接
# -*- coding: utf-8 -*-
# @Time : 2022/2/26 9:46
# @Author : heyubin
# @Email : 1551231277@qq.com
# @File : pysmb_test.py
from smb.SMBConnection import *
# param1:username
# param2:password
# param3:local NetBIOS machine name
# param4:remote NetBIOS machine name
samba = SMBConnection("17358882238", "19990123hyb", '', '') # 默认情况下,samba协议的NetBIOS是关闭的,因此填空即可
# param1: samba服务器的IP地址
assert samba.connect("192.168.1.121") # 连接samba服务器
# 上传文件
f = open("python.txt", 'rb') # 这里推荐使用b模型打开文件,测试发现总是出现一些奇怪的问题
# param1: samba服务器的共享路径
# param2: 共性路径下的,文件路径(这里需要指定上传到samba服务器上的哪个文件,如果没有就会创建一个),
# param3: 你需要上传的文件的对象(这个对象所属的类必须要有read()方法)
samba.storeFile('17358882238_Home1', 'Public/python.txt', f)
f.close()
# 下载文件
f = open("test.txt", 'wb')
# param1: samba服务器的共享路径
# param2: 共享路径下的,文件路径
# param3: 你需要下载的文件的对象
samba.retrieveFile('17358882238_Home1', "Public/DPU.txt", f)
f.close()
# samba对象还有很多的其他API函数
# samba.createDirectory()
# samba.deleteDirectory()
# samba.deleteFiles()
# samba.listShares()
# samba.listPath()
samba.close()