내 서버에있는 csv 파일에서 1.18MB 또는 약 10,000 행의 데이터를 Tableau 용 Google 시트로 푸시해야 읽을 수 있습니다.Google 스프레드 시트에 파이썬으로 데이터를 푸시하는 가장 빠른 방법은 무엇입니까
데이터가 Google DFP에서 csv 문서로 전송됩니다. 나는 gspread 라이브러리를 사용하여 이전에 csv 데이터로 Google 시트를 업데이트했지만 10,000 레코드 및 레코드 당 30 초 ~이 방법은 유효하지 않습니다.
gspread 라이브러리를 사용하는 것보다 csv/txt 파일의 내용을 Google 스프레드 시트로 복사하는 더 빠른 방법이 있습니까? Python을 사용하는 것이 바람직합니다.
업데이트 : 저는이 방법으로 셀을 대량 업데이트하려고합니다.
raw_dfp = pd.read_csv('live_dfp_UTF.csv', error_bad_lines=False)
sample5 = raw_dfp.iloc[:3, :]
rows, col = sample5.shape
doc.resize(1, 7)
doc.clear()
doc.resize(rows + 1, col)
column_names = ['', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K']
cell_range = 'A1:' + column_names[col] + str(rows)
cells = doc.range(cell_range)
# To use this next line??
# flattened_data = np.flatten(sample5)
for x in range(rows):
cells[x].value = sample5[x].decode('utf-8')
doc.update_cells(cells)
제안 된 대답이 작동하지 않는 경우 : 30 초가 한 레코드에 오래 걸린 것처럼 보입니다. 그러나 많은 오버 헤드를 추가하고 전달하는 데이터가 그리 많지 않은 것은 API 호출입니다. 열 개수에 따라 한 번에 ~ 200 행의 청크로 밀어 넣으면 나에게 한 행을 푸는 것보다 거의 무시할 수있는 추가 시간이 소요됩니다. 그러나 한 번의 업데이트로 얼마만큼 밀어 넣을 수 있는지에 대한 상한선이 있습니다. – roganjosh
답변 : [여기] (http://stackoverflow.com/questions/34640175/can-i-write-whole-lines-in-google-spreadsheets-using-gspread-in-python/34837122#34837122) for 도움이 될만한 일을합니다. – roganjosh
@roganjosh 질문의 본문에 넣어서 업데이트를 살펴볼 수 있습니까? 평평한 선 이후에해야 할 일을 이해하는 데 어려움을 겪고 있습니다. –