Skip to main content

Simple project to grab instagram info

Project description

InstagramGrabber

pypi Python Versions

InstagramGrabber adalah modul Python yang memungkinkan pengembang mengakses dan mengambil data dari Instagram. Dengan fungsionalitas seperti mengunduh gambar, video, dan informasi profil pengguna, modul ini menyediakan solusi efektif untuk integrasi Instagram dalam proyek tanpa perlu mengakses API resmi. Memudahkan ekstraksi data, InstagramGrabber cocok untuk berbagai aplikasi dan skenario pengembangan perangkat lunak.


Fiture

  • Instagram Post Grabber: mengambil semua informasi tentang postingan
  • Instagram User Grabber: mengambil semua informasi tentang user
  • Instagram User Posts Grabber: mengambil semua informasi tentang posts user
  • Instagram User Reels Grabber: mengambil semua informasi tentang reels user
  • Instagram User Stories Grabber: mengambil semua informasi tentang stories user

Installation

Using Git

git clone https://github.com/SukunDev/instagramgrabber.git
cd instagramgrabber
python -m setup.py install

Using PIP

pip install InstagramGrabber

Usage

Login

Login dulu sebelum pakai modul ini. Ambil cookies untuk aktivitas lebih lanjut.

from InstagramGrabber import Instagram
from dotenv import load_dotenv
import os


load_dotenv()

username = os.environ.get("IG_USERNAME", None) # ganti dengan instagram username kamu
password = os.environ.get("IG_PASSWORD", None) # ganti dengan instagram password kamu

ig = Instagram(username=username, password=password)
account = ig.login()
print(account['username']) # ini akan mengambil username instagram kamu jika sudah selesai

Get Post

Ambil link post instagram yang kalian inginkan, Kalian bisa menggunakan url Post atau Reel

from InstagramGrabber import Instagram
from dotenv import load_dotenv
import os


load_dotenv()

username = os.environ.get("IG_USERNAME", None) # ganti dengan instagram username kamu
password = os.environ.get("IG_PASSWORD", None) # ganti dengan instagram password kamu

ig = Instagram(username=username, password=password)

if not os.path.exists(f"./instagram_cookies/{username}_cookies"):
    print("cookies tidak ditemukan")
    try:
        print("mencoba login")
        user = ig.login()
        print(f"berhasil login [{user['username']}]")
    except Exception as e:
        print(str(e))
    print("\n=============\n")

post = ig.get_post(url="https://www.instagram.com/p/C0oC-bchkjw")
print(f"user id: {post.user.user_id}") # ambil user user id
print(f"username: {post.user.username}") # ambil user username
print(f"full name: {post.user.full_name}") # ambil user full name
print(f"category name: {post.user.category_name}") # ambil user category name
print(f"biography: {post.user.biography}") # ambil user biography
print(f"jumlah following: {post.user.following}") # ambil user jumlah following
print(f"jumlah followers: {post.user.followers}") # ambil user jumlah followers
print(f"jumlah posts: {post.user.posts_count}") # ambil user jumlah posts
print(f"profile picture: {post.user.profile_picture}") # ambil user profile picture

if post.media: # check media ada atau tidak
    print(post.media.prettify(indent=2)) # ambil post info

Get User

Ambil username instagram target dan jalankan program ini

from InstagramGrabber import Instagram
from dotenv import load_dotenv
import os


load_dotenv()

username = os.environ.get("IG_USERNAME", None) # ganti dengan instagram username kamu
password = os.environ.get("IG_PASSWORD", None) # ganti dengan instagram password kamu

ig = Instagram(username=username, password=password)

if not os.path.exists(f"./instagram_cookies/{username}_cookies"):
    print("cookies tidak ditemukan")
    try:
        print("mencoba login")
        user = ig.login()
        print(f"berhasil login [{user['username']}]")
    except Exception as e:
        print(str(e))
    print("\n=============\n")



user = ig.get_user("hololive.animation")
print(f"user id: {user.user_id}") # ambil user user id
print(f"username: {user.username}") # ambil user username
print(f"full name: {user.full_name}") # ambil user full name
print(f"category name: {user.category_name}") # ambil user category name
print(f"biography: {user.biography}") # ambil user biography
print(f"jumlah following: {user.following}") # ambil user jumlah following
print(f"jumlah followers: {user.followers}") # ambil user jumlah followers
print(f"jumlah posts: {user.posts_count}") # ambil user jumlah posts
print(f"profile picture: {user.profile_picture}") # ambil user profile picture

Get All User Posts

Ambil username instagram target dan jalankan program ini

from InstagramGrabber import Instagram
from dotenv import load_dotenv
import os


load_dotenv()

username = os.environ.get("IG_USERNAME", None) # ganti dengan instagram username kamu
password = os.environ.get("IG_PASSWORD", None) # ganti dengan instagram password kamu

ig = Instagram(username=username, password=password)

if not os.path.exists(f"./instagram_cookies/{username}_cookies"):
    print("cookies tidak ditemukan")
    try:
        print("mencoba login")
        user = ig.login()
        print(f"berhasil login [{user['username']}]")
    except Exception as e:
        print(str(e))
    print("\n=============\n")

user = ig.get_user("hololive.animation")
print(f"user id: {user.user_id}") # ambil user user id
print(f"username: {user.username}") # ambil user username
print(f"full name: {user.full_name}") # ambil user full name
print(f"category name: {user.category_name}") # ambil user category name
print(f"biography: {user.biography}") # ambil user biography
print(f"jumlah following: {user.following}") # ambil user jumlah following
print(f"jumlah followers: {user.followers}") # ambil user jumlah followers
print(f"jumlah posts: {user.posts_count}") # ambil user jumlah posts
print(f"profile picture: {user.profile_picture}") # ambil user profile picture

max_id = None
more_available = True
while more_available:
    posts = user.get_post(max_id=max_id)
    max_id = posts.max_id
    more_available = posts.more_available
    print(f"Next max_id: {max_id}")
    print(f"More Available: {more_available}")
    if posts.media: # check media ada atau tidak
        print(posts.media.prettify(indent=2))

Get All User Reels

Ambil username instagram target dan jalankan program ini

from InstagramGrabber import Instagram
from dotenv import load_dotenv
import os


load_dotenv()

username = os.environ.get("IG_USERNAME", None) # ganti dengan instagram username kamu
password = os.environ.get("IG_PASSWORD", None) # ganti dengan instagram password kamu

ig = Instagram(username=username, password=password)

if not os.path.exists(f"./instagram_cookies/{username}_cookies"):
    print("cookies tidak ditemukan")
    try:
        print("mencoba login")
        user = ig.login()
        print(f"berhasil login [{user['username']}]")
    except Exception as e:
        print(str(e))
    print("\n=============\n")

user = ig.get_user("hololive.animation")
print(f"user id: {user.user_id}") # ambil user user id
print(f"username: {user.username}") # ambil user username
print(f"full name: {user.full_name}") # ambil user full name
print(f"category name: {user.category_name}") # ambil user category name
print(f"biography: {user.biography}") # ambil user biography
print(f"jumlah following: {user.following}") # ambil user jumlah following
print(f"jumlah followers: {user.followers}") # ambil user jumlah followers
print(f"jumlah posts: {user.posts_count}") # ambil user jumlah posts
print(f"profile picture: {user.profile_picture}") # ambil user profile picture

max_id = None
more_available = True
while more_available:
    reels = user.get_reel(max_id=max_id)
    max_id = reels.max_id
    more_available = reels.more_available
    print(f"Next max_id: {max_id}")
    print(f"More Available: {more_available}")
    if reels.media: # check media ada atau tidak
        print(reels.media.prettify(indent=2))

Get All User Stories

Ambil username instagram target dan jalankan program ini

from InstagramGrabber import Instagram
from dotenv import load_dotenv
import os


load_dotenv()

username = os.environ.get("IG_USERNAME", None) # ganti dengan instagram username kamu
password = os.environ.get("IG_PASSWORD", None) # ganti dengan instagram password kamu

ig = Instagram(username=username, password=password)

if not os.path.exists(f"./instagram_cookies/{username}_cookies"):
    print("cookies tidak ditemukan")
    try:
        print("mencoba login")
        user = ig.login()
        print(f"berhasil login [{user['username']}]")
    except Exception as e:
        print(str(e))
    print("\n=============\n")

user = ig.get_user("hololive.animation")
print(f"user id: {user.user_id}") # ambil user user id
print(f"username: {user.username}") # ambil user username
print(f"full name: {user.full_name}") # ambil user full name
print(f"category name: {user.category_name}") # ambil user category name
print(f"biography: {user.biography}") # ambil user biography
print(f"jumlah following: {user.following}") # ambil user jumlah following
print(f"jumlah followers: {user.followers}") # ambil user jumlah followers
print(f"jumlah posts: {user.posts_count}") # ambil user jumlah posts
print(f"profile picture: {user.profile_picture}") # ambil user profile picture

stories = user.get_stories()
if stories.media: # check media ada atau tidak
    print(stories.media.prettify(indent=2))

Kontribusi

Jika Anda ingin berkontribusi pada proyek ini, kami sangat menghargai setiap bentuk dukungan. Silakan buka Panduan Kontribusi untuk informasi lebih lanjut.

Lisensi

Proyek ini dilisensikan di bawah MIT License.


Dikembangkan oleh SukunDev

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

InstagramGrabber-2.0.0.tar.gz (10.0 kB view hashes)

Uploaded Source

Built Distribution

InstagramGrabber-2.0.0-py3-none-any.whl (14.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page