imgur

2chなどによく貼られる、http://i.imgur.comから始まるURL。その名の通り、imgurというサービスですが、自分は使うこと無いだろうな…と思っていました。最近になって開発者APIがめっちゃ便利なのに気付いたので、ここにまとめます。

 

imgurには画像のアップロード方法が2種類あります。アップロードした画像がアカウントに紐付くアカウントアップロードと、アップロードした画像がアカウントに紐付かない匿名アップロードです。今回は後者の「匿名アップロード」を使っていきます。

import os, requests from base64 import b64encode

path = os.path.dirname(os.path.abspath(__file__)) + ‘/’ filename = ‘test.png’ url = ‘https://api.imgur.com/3/image’ client_id = ‘clientid’ headers = {‘Authorization’: ‘Client-ID ‘ + client_id}

image = open(path + filename, ‘rb’).read() data = {‘image’: b64encode(image)} res = requests.post(url, headers=headers, data=data) print(res)

requestsを使えば、非常に簡単ですね。特に解説することはありません。

 

折角なのでコマンド化してみました。

パスの通っている所に設置するなどして、コマンドとして叩けるようにしてお使いください。imgurupload -c ${client_id} hoge.jpg huga.png のように打つことで複数枚アップロード出来ます。

 

新年度が始まり、また忙しくなりそうです…頑張ります…