Ich schreibe gerade an einem Programm, dass für mich ein Spiegelbild des PC auf einem FTP Server erstellt.
Momentan klemmts noch ein bisschen. Hier ist was ich bisher habe.
Code: Alles auswählen
#!/usr/bin/python
import os, shutil, ftplib, platform, win32api
def WhoAreYou():
targetidaslist = platform.uname()
targetid = ' '.join(targetidaslist)
return targetid # to be used as ftp folder
def WhatDrivesYouGot():
alldrives = win32api.GetLogicalDriveStrings()
drivelist = alldrives.split('\000')[:-1] # a list with all drives
return drivelist
def FtpConnectAndSetDir(targetid):
meinftp = ftplib.FTP("ftp.ich.de")
meinftp.login("login","passwort")
directory = targetid # steer into target FTP Folder!
# create dir if it doesn't exist
try:
meinftp.cwd(directory) # change dir
except:
meinftp.mkd(directory) # make dir
meinftp.cwd(directory) # change dir
print directory
return directory, meinftp
def CopyDataFromAllDrives(directory, drivelist):
for drive in drivelist:
for root, dirs, files in os.walk(drive):
for item in files:
full_fname = os.path.join(root, item)
meinftp.storbinary('STOR ' + item, open(full_fname, 'rb')) # hier liegt mein problem momentan
# main operation
##########################
targetid = WhoAreYou()
drivelist = WhatDrivesYouGot()
directory, meinftp = FtpConnectAndSetDir(targetid)
CopyDataFromAllDrives(directory, drivelist)
Fehlermeldung:
Code: Alles auswählen
hiberfil.sys
Traceback (most recent call last):
File "hdtoftpcopier30122012.py", line 56, in <module>
CopyDataFromAllDrives(directory, drivelist, meinftp)
File "hdtoftpcopier30122012.py", line 47, in CopyDataFromAllDrives
meinftp.storbinary('STOR ' + item, open(full_fname, 'rb'))
IOError: [Errno 13] Permission denied: 'C:\\hiberfil.sys'
C:\code>
Auch wenn der ganze Ansatz Schrott ist bitte sagen.
Ich bin auch noch nicht sicher wie ich die Ordnerstruktur hinkrieg, dass es die exakt überträgt.
halp.
danke vielmals im voraus.
P.S. ich code nur als Hobby und wenn meine Syntax Müll ist bitte ich um Nachsicht, das ist mein ~7ter Code und bin Selbstbeibringer ohne Mentor (wie wahrschans die meisten).