2016年10月23日日曜日

pysmbでディレクトリを作成する

pysmbでディレクトリを作成するには、以下のコードのようにSMBConnectionのcreateDirectoryを使用します。
import datetime
import platform
from smb.SMBConnection import SMBConnection

user = "test1"
password = "test1password"
host = "testserver"
shared_folder = "share"
conn = SMBConnection(user, password, platform.uname()[1], host, use_ntlm_v2 = True)
conn.connect(host, 139)

today = datetime.date.today()
todaystr = today.strftime("%Y%m%d")
conn.createDirectory(shared_folder, "foo/" + todaystr)

conn.close()

・pysmbのインストール
pip install pysmb

pysmbでIPアドレスからNetBIOS名を取得する

pysmbでIPアドレスからNetBIOS名を取得するには、以下のコードのようにNetBIOSクラスのqueryIPForNameを使用します。

from nmb.NetBIOS import NetBIOS
import sys

remote_ip = "192.168.1.10"
srv_name=""
timeout=10 # 10 sec
bios = NetBIOS()
srv_name = bios.queryIPForName(remote_ip, timeout=timeout)
bios.close()
if srv_name is None:
  print(remote_ip + " is not found.")
else:
  print(srv_name[0] + " is found.")

・pysmbのインストール
pip install pysmb