やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

Pythonでフォトライフから画像をダウンロードする

いよいよ画像データ本体をダウンロードする。

成果物

GitHubHatena.PhotLife.Downloader.201703041456

開発環境

はてなフォトライフAtomAPI - Hatena Developer Center

なお、使用させていただいたPythonライブラリは以下のライセンスである。感謝。

Library License Copyright
bs4 MIT Copyright © 1996-2011 Leonard Richardson,参考
dataset MIT Copyright © 2013, Open Knowledge Foundation, Friedrich Lindenberg, Gregor Aisch

前回まで

前回

概要

requests

import requests
res = requests.get(画像url)
res.content

res.contentでgetしたバイナリ値を取得する。

dataset

data = dict(ItemId=record['ItemId'], FileExtension=record['FileExtension'], Content=image)
self.db_photo['Contents'].update(data, ['ItemId'])

BLOB型であっても他の型と同じように扱えばいい。

参考

requestsを使ったダウンロード

Python、requestsを使ったダウンロード - Pythonメモ torinaブログ

requestsを使った画像のダウンロード - Qiita

DBにBLOBを挿入する方法

sqlite3

sql - Writing blob from SQLite to file using Python - Stack Overflow

sqlalchemy

Example using BLOB in SQLAlchemy - Stack Overflow

dataset

datasetは内部にsqlalchemyを使っている。でも、ふつうにBLOB型テーブル列に、response.contentを挿入すればいいだけ。

所感

画像のバックアップができた。次回、これを画像として表示したい。