|
FTP로 파일을 다운로드 받을일이 있었는데 문제는 파일의 수가 엄청 많아서, 일반 FTP Client 프로그램으로는 도저히 다운받을 수가 없었다.
19만개의 jpeg 시퀀스...영화 한편에 달하는 분량이다. 이럴땐 역시 텍스트 기반으로 접근하는 것이 효율적이라는 생각에 처음엔 Command Prompt로 해보았는데, 이것도 역시 한번에 100개 이상의 파일을 받질 못했다. 결국 파이썬으로 초간단 FTP Client를 만들어서 해결할 수 있었다. 파일네임은 edit.0000001.jpg ~ edit.0190000.jpg. import ftplib ip = '000.000.000.000' username = 'guest' password = 'guest' dnpath = 'c:/download' ftp = ftplib.FTP(ip) ftp.login(username, password) welcome = ftp.getwelcome() print welcome ftp.cwd('/download') #ftp.retrlines('LIST') -- file 수가 많으면 응답속도 느림 for i in range(1, 1900001): if i < 10: fpad = "000000"+str(i) elif i < 100: fpad = "00000"+str(i) elif i < 1000: fpad = "0000"+str(i) elif i < 10000: fpad = "000"+str(i) elif i < 100000: fpad = "00"+str(i) elif i < 1000000: fpad = "0"+str(i) f = "edit."+fpad+".jpg" fo = open(dnpath + f, "wb") print "%s -> %s" % (f, dnpath + f) ftp.retrbinary("RETR " + f, fo.write, 1024) fo.close() ftp.quit()
|
by mayan 이글루 파인더
카테고리
태그
최근 등록된 덧글
그냥 안부인사. 가루..
by chang E at 04/21 아항~^^ by mayan at 09/14 숫자앞에 0 붙이는 방법을.. by chang E at 09/13 bravo by chang E at 07/19 실제로 pop 에서 probab.. by chang E at 04/18 최근 등록된 트랙백
| |||