Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PythonではなくRcloneで アップロードしてみた
Search
YouYou
December 05, 2021
Programming
0
5.8k
PythonではなくRcloneで アップロードしてみた
詳細ブログ↓
https://zenn.dev/yuta28/articles/rclone-upload-gdrive
YouYou
December 05, 2021
Tweet
Share
More Decks by YouYou
See All by YouYou
AWSマネコンに複数のアカウントで入れるようになりました
yuhta28
2
230
今インフラ技術をイチから学び直すなら
yuhta28
1
250
AWSに詳しくない人でも始められるコスト最適化ガイド
yuhta28
3
630
Datadog外形監視基盤をEC2から ECSへ移行してみた
yuhta28
0
1.7k
アウトプット頑張ったら企業からLT登壇の依頼がきた話
yuhta28
1
1.5k
小さなことから始めるAWSコスト最適入門
yuhta28
1
1.2k
Datadogのコストも監視しよう
yuhta28
1
970
Rcloneを使った定期的なストレージ同期
yuhta28
0
740
Pulumiを触ってみよう
yuhta28
1
2.5k
Other Decks in Programming
See All in Programming
Go言語の特性を活かした公式MCP SDKの設計
hond0413
1
230
CSC305 Lecture 06
javiergs
PRO
0
220
詳しくない分野でのVibe Codingで困ったことと学び/vibe-coding-in-unfamiliar-area
shibayu36
3
4.9k
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
180
技術的負債の正体を知って向き合う / Facing Technical Debt
irof
0
170
CSC509 Lecture 03
javiergs
PRO
0
330
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
330
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
2
840
ソフトウェア設計の実践的な考え方
masuda220
PRO
4
580
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
200
「ちょっと古いから」って避けてた技術書、今だからこそ読もう
mottyzzz
10
6.7k
Range on Rails ―「多重範囲型」という新たな選択肢が、複雑ロジックを劇的にシンプルにしたワケ
rizap_tech
0
120
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Context Engineering - Making Every Token Count
addyosmani
6
240
Embracing the Ebb and Flow
colly
88
4.8k
Docker and Python
trallard
46
3.6k
Thoughts on Productivity
jonyablonski
70
4.9k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
9
590
How STYLIGHT went responsive
nonsquared
100
5.8k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Designing for Performance
lara
610
69k
The Pragmatic Product Professional
lauravandoore
36
6.9k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.3k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Transcript
PythonではなくRcloneで アップロードしてみた
Name:ユータ Occupation:SRE Twitter:@Y0u281 (オーでなくゼロです) ブログ:https://zenn.dev/yuta28 自己紹介 Twitter
目次 • 背景 • Pythonで実装 • Rcloneで実装 • おまけ •
まとめ
背景 ファイルコピーをしたい
背景 • Pythonを使えば簡単にできそう • PyDriveというものが有名らしい ◦ →既に開発終了していて非推奨らしい • GoogleドライブにはAPIがあってそれを使えばできそう ◦
Upload file data | Google Drive API ◦ サンプルソースも用意されていてイケる !
Pythonで実装 1. GCPでAPIを有効化 2. OAuthの認証情報を作成 3. クライアントトークンをEC2内に格納 4. Python Quickstart
| Google Drive API 5. Upload file data | Google Drive API
Pythonで実装
Pythonで実装 googleapiclient.errors.HttpError: <HttpError 404 when requesting https://www.googleapis.com/upload/drive/v3/files?fields=id&alt=json&uploadType=resumable returned "File not
found: /&~ev-%,s+2eqeH|jwG3!#-a%6#6LZyhdh". #IDはサンプル Details: "[{'domain': 'global', 'reason': 'notFound', 'message': 'File not found: 1mE_qImJ7ASarUCE4XUkv9sVER4-sVJKM.', 'locationType': 'parameter', 'location': 'fileId'}]">
Rcloneで実装 • Rclone.org • Go製のOSS • クラウドストレージにファイルをup/downloadできる ◦ 40個以上に対応!! ◦
暗号化して転送することも可能 • クラウドストレージ先にmountも可 • (プレビューだが)WebGUIも提供
Rcloneで実装 rclone configでセットアップを実施 • 前述で取得したクライアントトークンの IDとシークレット情報を貼り付け https://rclone.org/drive/
Rcloneで実装 copyコマンドでソースファイルと接続先のクラウドストレージ名を指定 rclone copy source file remote:
Rcloneで実装
おまけ GUIダッシュボードもあります rclone rcd --rc-web-gui コマンドベースではないので 直感的に設定しやすい ? OSS活動も受付中らしい https://github.com/rclone/rclone
-webui-react
まとめ
まとめ プログラミングなにもわからない
ありがとうございました より詳しい内容は以下のブログで↓ PythonではなくRcloneでGoogle共有ドラ イブにファイルをアップロードしてみた