15
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【instaloder】PythonにてInstagramの情報を取得するライブラリ

Last updated at Posted at 2022-12-25

前置き

Instagramでスクレイピングしようとしていませんか?
スクレイピングしようとしている方は、一度立ち止まってください!
スクレイピングは利用規約により禁止されています。絶対にやめてください。
そんなリスキーなことをするよりも簡単に情報収集できる方法があるので、紹介していきますね。

インスタのスクレイピング対策はTOPレベル

ユーザーページへのアクセスで、数十回ユーザーページにアクセスしただけで本人確認画面に飛ばされるそうで、プロキシでアクセスしたりUA変更や人間らしい動きなどの対策をしても弾かれるようです。

ライブラリ:Instaloader

海外の掲示板を周回していると面白いライブラリを見つけました。『Instaloader』という名前のライブラリでユーザーIDさえあればその人のプロフィールや投稿数、フォロワー、フォロー中の取得が数行で行えました。コンソール(cmd)で、

cmd
pip install instaloader

と入力すればインストールできます。

できること

・特定のハッシュタグが付いた投稿の情報取得
・ストーリーや投稿画像のダウンロード
・投稿のいいね数
・プロフィール文やプロフィール画像、フォロワー数など取得
etc..

プログラミング例

例を記載しておきますね👇

example.py
from instaloader import Instaloader, Profile

L = Instaloader()  # インスタンス化
id = 'watanabenaomi703'  # 渡辺直美さんのアカウントIDを入力しました
profile = Profile.from_username(L.context, id)  # プロファイル取得
UserName = profile.full_name  # ユーザー名取得
posts = profile.mediacount  # 投稿数取得
Follower = profile.followers  # フォロワー数取得
Follow = profile.followees  # フォロー中数取得
print(f'ユーザー名:{UserName}\n投稿数:{posts}\nフォロワー数:{Follower}\nフォロー中数:{Follow}')
出力結果 2022/01/07時点
ユーザー名: 渡辺直美 Naomi watanabe
投稿数:1055
フォロワー数:9,605,708
フォロー中数:752

まとめ

このライブラリを使用することで、大量の件数を問題なく取得できました。
使用する際にはライブラリのリファレンスを一読してくださいね。

15
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?