「インスタの分析を行いたい」
「他人のインスタ投稿のデータをダウンロードしたい」
「一つ一つではなく、一括で投稿データを保存したい」
このような場合には、この記事の内容が参考となります。
この記事では、インスタ投稿を一括保存する方法を解説しています。
本記事の内容
- インスタ投稿の一括保存に必要なモノ
- インスタ投稿の一括保存方法
- Instaloaderで取得したデータの説明
それでは、上記に沿って解説していきます。
インスタ投稿の一括保存に必要なモノ
OSに関しては、以下を含むクロスプラットフォームで動きます。
- Windows
- macOS
- Linux
そして、インスタ投稿の一括保存に必要なモノは以下。
- Python
- Instaloader
それぞれを以下で説明します。
Python
以下は、Python公式開発サイクルです。
バージョン | リリース日 | サポート期限 |
3.6 | 2016年12月23日 | 2021年12月23日 |
3.7 | 2018年6月27日 | 2023年6月27日 |
3.8 | 2019年10月14日 | 2024年10月 |
3.9 | 2020年10月5日 | 2025年10月 |
3.10 | 2021年10月4日 | 2026年10月 |
上記の公式開発サイクルに従うなら、Python 3.7以降となります。
可能なら、最新版のPython3.10を利用しましょう。
Pythonのインストールについては、以下の記事が参考になります。
ただし、Windowsに関してはアップグレードの内容です。
それをインストールに置き換えれば、同じような処理で進めることができます。
Windowsの場合
Linux(Ubuntu)の場合
Instaloader
Instaloaderは、Pythonで動くツールです。
Instaloaderを利用して、インスタ投稿の一括保存が可能になります。
ツールと言っても、GUIではなくコマンドラインツールです。
コマンドラインツールと言っても、簡単に使えます。
Instaloaderのインストールについては、次の記事で解説しています。
動作確認まで済ませておいてください。
以上、インスタ投稿の一括保存に必要なモノを説明しました。
次は、インスタ投稿の一括保存方法を説明します。
インスタ投稿の一括保存方法
Instaloaderは、コマンドラインツールです。
そのため、コマンドを発行できるようにします。
Windowsなら、コマンドプロンプトかPowerShellを起動しましょう。
Linuxなら、お好きな端末でどうぞ。
では、インスタ投稿の一括保存方法を実際に行います。
まずは、投稿を取得したいアカウントを決めます。
今回は、エンゼルスの大谷翔平選手を対象にします。
Shohei Ohtani | 大谷翔平(@shoheiohtani)
https://www.instagram.com/shoheiohtani/
そして、上記ページよりユーザーネームを取得します。
ユーザーネームは、下線を引いたモノです。
ユーザーネームは、ページのURLに含まれています。
長いユーザーネームの場合、ページ上だと省略される可能性もあります。
そのため、ページURLから取得した方がよいでしょう。
次に、Instaloader専用のディレクトリを作成します。
Instaloaderが起動するなら、場所はどこでもいいです。
とにかく、Instaloaderを動かすディレクトリを作成します。
基本的は、そのディレクトリに移動してInstaloaderを動かすようにします。
ディレクトリを作成して、そのディレクトリまで移動したら準備OKです。
では、次のコマンドを実行します。
instaloader shoheiohtani
もちろん、shoheiohtaniの部分はユーザーネームです。
上記コマンドを実行した結果は、以下。
$ instaloader shoheiohtani Stored ID 33952298044 for profile shoheiohtani. Hint: Use --login to download higher-quality versions of pictures. [1/1] Downloading profile shoheiohtani shoheiohtani/2020-05-28_03-47-03_UTC_profile_pic.jpg Retrieving posts from profile shoheiohtani. [ 1/20] shoheiohtani/2022-02-03_00-19-50_UTC.jpg [I’m honored to be on the cove…] json [ 2/20] shoheiohtani/2021-11-21_23-53-52_UTC.jpg [Thank you to everyone who has…] json [ 3/20] shoheiohtani/2021-11-19_00-09-07_UTC_1.jpg shoheiohtani/2021-11-19_00-09-07_UTC_2.jpg shoheiohtani/2021-11-19_00-09-07_UTC_3.jpg shoheiohtani/2021-11-19_00-09-07_UTC_4.jpg shoheiohtani/2021-11-19_00-09-07_UTC_5.jpg shoheiohtani/2021-11-19_00-09-07_UTC_6.jpg shoheiohtani/2021-11-19_00-09-07_UTC_7.jpg shoheiohtani/2021-11-19_00-09-07_UTC_8.jpg [Showing the world that anythi…] json [ 4/20] shoheiohtani/2021-07-16_03-11-38_UTC_1.jpg shoheiohtani/2021-07-16_03-11-38_UTC_2.jpg shoheiohtani/2021-07-16_03-11-38_UTC_3.jpg shoheiohtani/2021-07-16_03-11-38_UTC_4.jpg shoheiohtani/2021-07-16_03-11-38_UTC_5.jpg [Thank you to the city of Denv…] json [ 5/20] shoheiohtani/2021-06-18_18-00-14_UTC.jpg [Excited to announce that I’ll…] shoheiohtani/2021-06-18_18-00-14_UTC.mp4 json [ 6/20] shoheiohtani/2021-04-01_00-56-20_UTC.jpg [Ready for Opening Day 🔥] shoheiohtani/2021-04-01_00-56-20_UTC.mp4 json [ 7/20] shoheiohtani/2021-01-03_04-53-06_UTC.jpg [Happy New Year! Excited for 2…] json [ 8/20] shoheiohtani/2020-07-24_16-00-04_UTC.jpg [🙌] json [ 9/20] shoheiohtani/2020-07-13_01-06-40_UTC.jpg [One year ago today #RIP45] shoheiohtani/2020-07-13_01-06-40_UTC.mp4 json [10/20] shoheiohtani/2020-07-09_00-59-18_UTC.jpg [Throwback to AZ spring training] shoheiohtani/2020-07-09_00-59-18_UTC.mp4 json [11/20] shoheiohtani/2020-07-03_17-49-03_UTC.jpg [We’re back] shoheiohtani/2020-07-03_17-49-03_UTC.mp4 json [12/20] shoheiohtani/2020-07-01_21-41-46_UTC.jpg [🙏 RIP #45] json [13/20] shoheiohtani/2020-06-24_00-28-13_UTC_1.jpg shoheiohtani/2020-06-24_00-28-13_UTC_1.mp4 shoheiohtani/2020-06-24_00-28-13_UTC_2.jpg shoheiohtani/2020-06-24_00-28-13_UTC_2.mp4 [First outside BP in a while] json [14/20] shoheiohtani/2020-06-21_01-00-15_UTC_1.jpg shoheiohtani/2020-06-21_01-00-15_UTC_2.jpg shoheiohtani/2020-06-21_01-00-15_UTC_3.jpg [Very grateful for my amazing …] json [15/20] shoheiohtani/2020-06-18_00-59-24_UTC.jpg [495lbs] shoheiohtani/2020-06-18_00-59-24_UTC.mp4 json [16/20] shoheiohtani/2020-06-17_00-15-17_UTC.jpg [Staying ready] shoheiohtani/2020-06-17_00-15-17_UTC.mp4 json [17/20] shoheiohtani/2020-06-10_18-00-12_UTC.jpg [The Draft will always be spec…] json [18/20] shoheiohtani/2020-06-02_19-48-52_UTC.jpg [#blackouttuesday] json [19/20] shoheiohtani/2020-05-30_23-48-43_UTC.jpg [Live BP from last week] shoheiohtani/2020-05-30_23-48-43_UTC.mp4 json [20/20] shoheiohtani/2020-05-29_01-00-04_UTC.jpg [Hope my welcome to Instagram …] shoheiohtani/2020-05-29_01-00-04_UTC.mp4 json
投稿された20件分すべてが、一括で保存されたというログです。
もちろん、100件以上あってもその時点の過去分はすべて取得します。
処理が完了すると、現在いるディレクトリ上に「shoheiohtani」ディレクトリを確認できます。
「shoheiohtani」ディレクトリに投稿データが保存されています。
以上、インスタ投稿の一括保存方法を説明しました。
次は、Instaloaderで取得したデータの説明を行います。
Instaloaderで取得したデータの説明
「shoheiohtani」ディレクトリには、多くのファイルが存在しています。
大きく分けて、2種類のデータがあります。
- プロフィール
- 投稿
それぞれを下記で説明します。
プロフィール
プロフィールに関するファイルについて、次のようにまとめました。
ファイル名 | 内容 |
id | アカウントID(ユーザーネームとは異なる管理用ID) |
2020-05-28_03-47-03_UTC_profile_pic.jpg | プロフィール画像 |
shoheiohtani_33952298044.json.xz | プロフィール情報(JSON形式)の圧縮ファイル |
idファイルには、以下だけが記載されています。
33952298044
プロフィールは、次の画像です。
プロフィール情報には、投稿件数、フォロワー数、フォロー中の数字も記載されています。
投稿
2020年7月4日の投稿を例にして、確認してみましょう。
この投稿に関係のあるファイルは、以下。
ファイル名は、UTCベースの投稿日時となるようです。
- 2020-07-03_17-49-03_UTC.jpg
- 2020-07-03_17-49-03_UTC.mp4
- 2020-07-03_17-49-03_UTC.txt
- 2020-07-03_17-49-03_UTC.json.xz
動画投稿の場合は、動画とサムネイルとなる画像が取得できます。
画像の投稿であれば、mp4形式のファイルはないということです。
txt形式のファイルには、投稿メッセージのみが記載されています。
We’re back
そして、json.xz(中身のjson)には例のごとくJSON形式で情報が記載されています。
コメント数、視聴回数、いいね数なども取得できるようです。
分析に使えそうなデータが、このファイルに記載されています。
以上、Instaloaderで取得したデータの説明を行いました。