tumblr api を使いましょう。 tumblr に登録する方法は説明しません。

tumblr_image_get.py
import os import sys import time import requests api_url = 'https://api.tumblr.com/v2/tagged' api_key = sys.argv[1] tag = sys.argv[2] num = int(sys.argv[3]) prefix = '' dir_name = '' if (sys.argv[4] != ''): dir_name = sys.argv[4] prefix = dir_name + '_' full_dir = 'tumblr_images' if (dir_name != ''): full_dir = os.path.join(full_dir, dir_name) os.makedirs(full_dir, exist_ok=True) payload = { 'api_key': api_key, 'tag': tag, 'before': '' } photo_urls = [] for i in range(num): r = requests.get(api_url, params=payload) r_json = r.json() for data in r_json['response']: if data['type'] != 'photo': continue for photo in data['photos']: photo_urls.append(photo['original_size']['url']) if(len(r_json['response']) == 0): continue payload['before'] = r_json['response'][len(r_json['response']) - 1]['timestamp'] time.sleep(1) image_idx = 0 for url in photo_urls: image_idx += 1 extension = url[-3:] if extension != 'jpg' and extension != 'png': continue with open(full_dir + '/' + prefix + str(image_idx) + '.jpg', 'wb') as handler: response = requests.get(url) if not response.ok: continue handler.write(response.content) time.sleep(1)

これで Google Colaboratory を使って下記のセルを用意します。
Google Colaboratory は Google Chrome で使うものになります。

下記は Google Drive をマウントするセルです。

get_image.ipynb python
from google.colab import drive drive.mount('/content/drive')

下記が Google Drive の tumblr/tumblr_image_get.py にある前提で下記のセルを用意。

get_image.ipynb bash
#!drive/My\ Drive/tumblr; python tumblr_image_get.py tumlr_API_KEY "猫" 100 prefix
  • tumlr_API_KEY は tumblr から取得して下さいね。
  • tumblr_images って言うディレクトリも Google Drive の tumblr 以下に用意しましょう。

こんな感じで動かせるようになります。

tumblr_image_get.pyJupyter でも使えると思います。