Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
PythonではなくRcloneで アップロードしてみた
YouYou
December 05, 2021
Programming
0
1k
PythonではなくRcloneで アップロードしてみた
詳細ブログ↓
https://zenn.dev/yuta28/articles/rclone-upload-gdrive
YouYou
December 05, 2021
Tweet
Share
More Decks by YouYou
See All by YouYou
ログ集約基盤をCloudWatchからOpenSearchに変えてみた
yuhta28
0
140
dev.toの記事もGitHubで管理してみた
yuhta28
0
520
Repographyでいい感じにGitコミットを視覚化してみた
yuhta28
1
370
IaCのCI_CDを実現するSpaceliftを触ってみた
yuhta28
0
750
既存インフラをコード化する時に気を付けること
yuhta28
1
2.4k
IAMロールでTerraformのCI/CDを構築してみた
yuhta28
0
1.9k
Instance Schedulerを使ってEC2の稼働時間を管理してみた
yuhta28
0
1.4k
EC2のキーペア置換に気を付けよう
yuhta28
0
1.3k
いい感じにCLWをtailしてみる
yuhta28
0
440
Other Decks in Programming
See All in Programming
SwiftUIで「意図」を伝える / swiftui_intention
uhooi
2
150
SGGとは
inoue2002
0
440
MLOps勉強会_リアルタイムトラフィックのサーバレスMLOps基盤_20220810
strsaito
1
460
一口目から美味しいReactのスルメ本🦑
taro28
2
700
OSS貢献を気軽にしたい Let's Go Talk #1
yuyaabo
2
240
Dagger, la CI, autrement
guikingone
1
120
SRE NEXT 2022に学ぶこれからのSREキャリア
fukubaka0825
2
400
FullStack eXchange, July 2022
brucel
0
200
WindowsコンテナDojo:第6回 Red Hat OpenShift入門
oniak3ibm
PRO
0
180
料理の注文メニューの3D化への挑戦
hideg
0
300
10歳の minne から、これから長く続くプロダクトを作るすべての人へ
tsumichan
9
3.7k
Enzyme から React Native Testing Library に移行した経緯 / 2022-07-20
tamago3keran
1
160
Featured
See All Featured
The Invisible Side of Design
smashingmag
290
48k
Adopting Sorbet at Scale
ufuk
63
7.6k
Intergalactic Javascript Robots from Outer Space
tanoku
260
25k
Rails Girls Zürich Keynote
gr2m
87
12k
Imperfection Machines: The Place of Print at Facebook
scottboms
253
12k
The MySQL Ecosystem @ GitHub 2015
samlambert
239
11k
WebSockets: Embracing the real-time Web
robhawkes
57
5.6k
How to name files
jennybc
41
63k
The Mythical Team-Month
searls
210
39k
Three Pipe Problems
jasonvnalue
89
8.7k
Automating Front-end Workflow
addyosmani
1351
200k
Gamification - CAS2011
davidbonilla
75
3.9k
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共有ドラ イブにファイルをアップロードしてみた