FTP 사이트에서 로컬 Windows 파일 서버로 다운로드 한 gz 파일을 추출해야합니다. 파일의 로컬 경로에 대한 변수가 설정되어 있으며 GZIP 머들에서 사용할 수 있다는 것을 알고 있습니다.
어떻게 할 수 있습니까? GZ 파일 내부의 파일은 XML 파일입니다.
FTP 사이트에서 로컬 Windows 파일 서버로 다운로드 한 gz 파일을 추출해야합니다. 파일의 로컬 경로에 대한 변수가 설정되어 있으며 GZIP 머들에서 사용할 수 있다는 것을 알고 있습니다.
어떻게 할 수 있습니까? GZ 파일 내부의 파일은 XML 파일입니다.
답변:
import gzip
import shutil
with gzip.open('file.txt.gz', 'rb') as f_in:
with open('file.txt', 'wb') as f_out:
shutil.copyfileobj(f_in, f_out)
shutil.copyfileobj()
세번째 파라미터를 가진다는 length
: 주어진 경우 "정수 길이가 버퍼 크기 특히, 음 길이 값 수단 청크 소스 데이터에 반복없이 데이터를 복사하기 위해, 기본적으로 데이터를 청크로 판독된다. 제어되지 않은 메모리 소비를 피하십시오. "
import gzip
f = gzip.open('file.txt.gz', 'rb')
file_content = f.read()
f.close()
with gzip.open('features_train.csv.gz') as f:
features_train = pd.read_csv(f)
features_train.head()
xml 데이터를 사용하고 있고 현재 pd.read_xml()
기능 이 없기 때문에 정확한 답은 아니지만 (v0.23.4부터) pandas (v0.21.0부터 시작)는 파일의 압축을 풀 수 있습니다! 감사합니다 Wes!
import pandas as pd
import os
fn = '../data/file_to_load.json.gz'
print(os.path.isfile(fn))
df = pd.read_json(fn, lines=True, compression='gzip')
df.tail()