PythonでGoogleドライブにCSVをアップロードする
qiita.com
こちらの記事を元にGoogleドライブに作成したCSVファイルをアップロードして友達と共有できるようにしてみた。
以下がざっくりとした流れです。
-
1.「google-api-python-client」と「PyDrive」をインストール
2.Google Developers Consoleにアクセスしてプロジェクトを作成
3.「クライアントID」と「クライアントシークレット」を取得
3.Google Drive APIを有効にする
4.「settings.yaml」ファイルを作成
※取得した「クライアントID」と「クライアントシークレット」を記入
5.テストコードで実行
※実行時に表示されたURLにブラウザでアクセスして承認作業を行い「credentials.json」を作成してアクセストークンを取得
6.実際のプログラムでにアップロード
-
以下にそれぞれのコードを記載します。
■yamlファイル
client_config_backend: settings client_config: client_id: <クライアントID> client_secret: <クライアントシークレット> save_credentials: True save_credentials_backend: file save_credentials_file: credentials.json get_refresh_token: True oauth_scope: - https://www.googleapis.com/auth/drive.file - https://www.googleapis.com/auth/drive.install
■アップロードコード
from pydrive.auth import GoogleAuth from pydrive.drive import GoogleDrive gauth = GoogleAuth() gauth.CommandLineAuth() drive = GoogleDrive(gauth) f = drive.CreateFile({'title': 'test.jpg', 'mimeType': 'image/jpeg'}) f.SetContentFile('test.jpg') f.Upload()
■実際のアップロードコード
from pydrive.auth import GoogleAuth from pydrive.drive import GoogleDrive gauth = GoogleAuth() gauth.CommandLineAuth() drive = GoogleDrive(gauth) folder_id = '******************' #ブラウザでアップロードしたいフォルダを開いて表示されたURLの最後の部分がフォルダID f = drive.CreateFile({'title': 'test.csv', 'mimeType': 'text/csv', 'parents': [{'kind': 'drive#fileLink', 'id':folder_id}]}) f.SetContentFile('test.jpg') f.Upload()
こんな感じです。詳細は上に乗せているQiitaを見てください。