18

Próbuję użyć Google Drive API (Python), aby pobrać niektóre karty z pliku arkusza kalkulacyjnego. Czy informacje o identyfikatorach są zawarte w metadanych pliku? Co staram się zrobić to (nie może to być poprawne, proszę sugerować :)):Jak uzyskać listę arkuszy (imię i nazwisko "gid") w arkuszu kalkulacyjnym Google przy użyciu interfejsu Drive API?

file_metadata = self.service.files().get(file_id=file_id).execute() 
# in the following line, how can I get a download url with a gid (a tab in a spreadsheet file) 
download_url = file_metadata.get('exportLinks')['text/csv'] 
# download the file. 

Dzięki :)

+1

>> download_url = file_metadata.get ('exportLinks') ['text/csv'] + '& gid =' + gid << Chciałbym również uzyskać te informacje z interfejsu API, wraz z nazwami kart. – AMS

+0

Dzięki @AMS, tak z imionami byłoby świetnie! –

+0

@AMS, czy mogę zapytać, dlaczego potrzebujemy lewy ruch gid? –

Odpowiedz

1

Możesz to zrobić, korzystając z usługi Arkusz kalkulacyjny w Skryptach Google Apps. To nie jest tak wygodne, jak ma bezpośredniego połączenia API, ale przynajmniej jest to możliwe:

  1. wywołać metodę SpreadsheetApp.openById(id) aby otworzyć arkusz przy użyciu napędu file_id.
  2. Wywołanie metody Spreadsheet.getSheets() w celu pobrania listy obiektów Sheet.
  3. Dla każdego arkusza wywołaj metody Sheet.getSheetId() i Sheet.getSheetName(), aby uzyskać nazwę (która jest tym, co widzi użytkownik arkusza kalkulacyjnego) i arkusz ID (co należy podać w parametrze gid= podczas eksportowania).

Można użyć niedawno ogłoszonych Apps Script Execution API dostarczenie REST API dla projektu Apps Script, który można następnie połączyć w sposób podobny do interfejsu API Dysku.

Powiązane problemy