2013-07-27 2 views
0

파이썬을 사용하여 이미 존재하는 zip 파일에 전체 디렉토리의 내용을 추가하는 방법은 무엇입니까? zip 파일에 추가 할 디렉토리에는 다른 폴더도 포함되며 zip 파일에 덮어 써야 할 중복 파일이 있습니다. 어떤 도움을 주시면 감사하겠습니다. 미리 감사드립니다!디렉토리의 내용을 zip 파일에 추가하는 방법은 무엇입니까?

P. 디렉토리를 압축 할 수 있다면 작동 할 수있는 두 파일을 결합하십시오.

답변

0

파이썬의 zipfile 모듈을 사용하면 ZIP 압축 아카이브를 조작 할 수 있습니다. ZipFile.namelist() 메서드는 아카이브에있는 파일 목록을 반환하고 ZipFile.write() 메서드를 사용하면 파일을 아카이브에 추가 할 수 있습니다.

z = zipfile.ZipFile('myfile.zip') 

os.walk 메서드를 사용하면 디렉토리 트리에 포함 된 모든 파일을 반복 할 수 있습니다.

for root, dirs, files in os.walk('mydir'): 
    for filename in files: 
    z.write(os.path.join(root, filename)) 

아카이브의 파일을 바꾸는 것이 까다로운 것으로 보입니다. 임시 보관함을 만든 다음 완료된 후에 원래 설명으로 바꾸어서 항목을 제거 할 수 있습니다 (in this question).

대신 zip 명령을 호출하는 것이 더 쉬울 수도 있지만 함께 입력하면 원하는 위치로 이동할 수 있습니다.

관련 문제