2010-12-01 2 views
0

엑셀 파일 이름을 기반으로 FTP 사이트 (매일)의 다양한 폴더로 약 40 개의 엑셀 스프레드 시트를 옮길 필요가 있습니다.파이썬이나 VB를 사용하여 여러 개의 엑셀 파일을 여러 개의 FTP 폴더에 업로드하려면 어떻게합니까?

예를 들어 File1.xls 인 경우 File2.xls가 등으로 이동되는 경우 File1.xls가 디렉토리의 폴더 A 으로 이동됩니다.

그래서 40 개의 파일과 40 개의 디렉토리가 있습니다. 누군가 파이썬이나 VB에서 이것을 자동화하도록 도와 줄 수 있습니까?

답변

1

나는 당신의 도움을 주셔서 감사합니다

, Jaimi는 ftplib에서보세요. VB.net에서

import ftplib 

files = (
    # list your files and dirs here 
    ('local_file1.xls', 'target_dir1'), 
    ('local_file2.xls', 'target_dir2'), 
    # etc. 
) 
ftp = ftplib.FTP("ftp://example.com") 
ftp.login() 
for filename, directory in files: 
    f = open(f, 'rb') 
    ftp.cwd(directory) 
    ftp.storbinary("STOR %s"%filename, f) 
    ftp.cwd('..') 
    f.close() 
+0

도와 줘서 고마워. 다음 오류가 나타납니다 : "TypeError : 유니 코드로 강제 변환 : 문자열 또는 버퍼가 필요합니다. 터플이 발견되었습니다" – Jaimi

+0

자세한 정보 없이는 대답하기가 어렵습니다. 코드 및 전체 오류를 게시 할 수 있습니까? FTP = FTP (www.ftp.com) #이 호스트에 연결 FTPLIB 가져 오기 FTP, 기본 포트 디렉토리 = ('ATNET') 파일 = ( ('1121_Score_Card.xls'에서 –

+0

, '/ ATNET/('1123_Score_Card.xls', '/ ATNET/ls5738/FROMLS'), ('1124_Score_Card.xls'), ('1122_Score_Card.xls', '/ ATNET/ls1674/FROMLS' '/ ATNET/ls1476/FROMLS'파일) 파일 이름에 대한 ) , 디렉토리 F = 개방 (파일, 'RB') ftp.cwd (디렉토리) ftp.storbinary ("STOR % s을"% 파일 이름 , 파일) ftp.cwd ('..') files.close() # ftp.quit() – Jaimi

1

이 (가 VB 2008 년 작품) 다음을 시도해보십시오 :

My.Computer.Network.UploadFile("localfilename", "ftp server address", "username", "password") 

그것은, BTW의 첫 도움 작품 (희망 여기에 당신이 시작하는 몇 가지 테스트되지 않은 코드는 여기에 시간이 너무 미안하면 내가 잘못 했어)

+0

어디에이 코드를 입력해야합니까? 덕분에 – Jaimi

+1

그 형태가 있다면 form_load button_click, 만약 콘솔이 메인 서브에서 그냥 plonk한다면 –

관련 문제