Drive API を使用して Google スプレッドシートのシートのリスト (名前と「gid」) を取得するにはどうすればよいですか? 質問する

Drive API を使用して Google スプレッドシートのシートのリスト (名前と「gid」) を取得するにはどうすればよいですか? 質問する

Google Drive API (Python) を使用して、スプレッドシート ファイルのいくつかのタブをダウンロードしようとしています。gids 情報はファイルのメタデータにありますか? 私がやろうとしていることは次のとおりです (これは正しくない可能性があります。提案してください):

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.

ベストアンサー1

古い視覚化API URLを使用できます

f'https://docs.google.com/spreadsheets/d/{doc_id}/gviz/tq?tqx=out:csv&sheet={sheet_name}'

名前でシートをダウンロードする。私はこれを投稿したばかりですここGoogle API Pythonライブラリのコードと一緒に。これは、別の答えリンク先チャートドキュメントここでは、これを実行する方法が示されていますgid。または、スプレッドシートをExcelファイルなどとしてエクスポートして、すべてのシートをダウンロードすることもできます。

class MimeTypes:
    EXCEL = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"

drive_api.files().export_media(fileId=file_id, mimeType=MimeTypes.EXCEL)

それでも でシートを取得したい場合はgid、 はGoogle Sheets API のgidです(sheetIdここ)。

そして、あなたはシートAPIすべてのシートとそれに対応する を取得しますsheetId

おすすめ記事