archive

[Python] zipfile 모듈 사용법 본문

STUDY/Python

[Python] zipfile 모듈 사용법

seonyounggg 2021. 2. 23. 22:30
import zipfile 

zipfile.is_zipfile(file_name) # zip 파일이 맞는지 확인

zipfile.ZipFile(file_name).namelist() # 압축 파일 내 파일명 리스트로 반환

with zipfile.ZipFile(file_name) as z:
    z.extractall() # 모든 파일 압축 해제
    
with zipfile.ZipFile(file_name) as z:
    z.extractall(path) # path에 모든 파일 압축 해제

(참고) with-as : seonyounggg.tistory.com/138


추가로, 사용하다가 발견한 점을 정리한다.

is_zipfile()은 magic number를 기반으로 파일의 형식을 구분한다.

 

File Magic Number (파일 매직 넘버) = File Signature (파일 시그니처)

File Magic Number (파일 매직 넘버) = File Signature (파일 시그니처) 파일들은 각각 고유...

blog.naver.com

이 때, *.zip뿐만 아니라 zip과 magic number가 완전히 일치하거나, 앞부분이 일치하는 모든 파일들이 zip 파일로 인식이 되고 압축해제된다

(ex) *.jar, *.docx, *.xlxs, *.pptx

또한 확장자가 없는 파일도 내부적으로 조건에 해당된다면 압축해제된다.

따라서 특정 확장자만 정확하게 추출하기를 원한다면 추가적인 처리가 필요해보인다.

 

'STUDY > Python' 카테고리의 다른 글

[Python] 문자-아스키코드 변환  (0) 2021.03.02
[Python] with as  (0) 2021.02.24
[Python] for-else, while-else  (0) 2021.02.19
[Python] any(), all() 함수  (0) 2021.02.18
[파이썬] collections.Counter 클래스  (0) 2021.02.02
Comments