2017-11-26 1 views
-1

나는 Google Cloud Storage에 다운로드하지 않고 데이터를 읽으려는 CSV 파일이 있습니다. 이것이 가능한가? 나는 광범위하게 문서를 검사하고 있지만 이것을 수행하는 직접적인 방법을 찾지 못했다. 워드 프로세서는 파일을 다운로드 한 다음 csv 읽기를 수행해야한다고 말합니다. 그러나이 경우 수행 할 응용 프로그램이 Google App Engine에 호스팅되어 있으며 그렇게 할 수 없기 때문에 가능하지 않습니다.GCS 파일을 다운로드 할 필요없이 파이썬으로 이동 중에 읽을 수 있습니까?

이 내 현재 함수입니다 :하지만, 내가 잃었어요이 후

def get_data_from_csv_file(filename): 
    app_id = get_app_id() 
    g_storage = storage.Client(project=app_id) 
    bucket = g_storage.get_bucket('prod-data-migration-csv-exports') 

. 누구든지 전에 이것을 달성 했습니까? 변수에 모든 .csv 내용을 저장할 수있는 방식으로 파일을 가져 와서 내용을 읽는 방법이 있습니까?

답변

1

일반 아이디어는 일반 파일 시스템 open() 대신 GCS 클라이언트 라이브러리의 .open() 함수를 사용하는 것입니다.

아마도 csv.writer 대신 csv.reader을 사용하여 Write a CSV to store in Google Cloud Storage에서 확장 할 수 있습니다.

어쩌면이 줄을 따라 뭔가? (테스트되지 않음) :

gcs_file = gcs.open(os.path.join(bucket, filename), 'r') 
csv_reader = csv.reader(gcs_file) # add whatever options you need 

# CSV processing 

gcs_file.close() 
관련 문제