If you want to work with Instagrapi (business interests), we strongly advise you to prefer HikerAPI SaaS project. However, you won't need to spend weeks or even months setting it up. The best service available today is HikerAPI SaaS, which handles 4–5 million daily requests, provides support around-the-clock, and offers partners a special rate. In many instances, our clients tried to save money and preferred instagrapi, but in our experience, they ultimately returned to HikerAPI SaaS after spending much more time and money. It will be difficult to find good accounts, good proxies, or resolve challenges, and IG will ban your accounts.
The instagrapi more suits for testing or research than a working business!
✨ aiograpi - Asynchronous Python library for Instagram Private API ✨
LamaTok for TikTok API ?
HikerAPI for Instagram API ⚡⚡⚡
DataLikers for Instagram Datasets ?
Features:
Getting public data of user, posts, stories, highlights, followers and following users
Getting public email and phone number, if the user specified them in his business profile
Getting public data of post, story, album, Reels, IGTV data and the ability to download content
Getting public data of hashtag and location data, as well as a list of posts for them
Getting public data of all comments on a post and a list of users who liked it
Management of proxy servers, mobile devices and challenge resolver
Login by username and password, sessionid and support 2FA
Managing messages and threads for Direct and attach files
Download and upload a Photo, Video, IGTV, Reels, Albums and Stories
Work with Users, Posts, Comments, Insights, Collections, Location and Hashtag
Insights by account, posts and stories
Like, following, commenting, editing account (Bio) and much more else
Fast and effective Instagram Private API wrapper (public+private requests and challenge resolver) without selenium. Use the most recent version of the API from Instagram, which was obtained using reverse-engineering with Charles Proxy and Proxyman.
Instagram API valid for 16 Dec 2023 (last reverse-engineering check)
Support Python >= 3.9
For any other languages (e.g. C++, C#, F#, D, Golang, Erlang, Elixir, Nim, Haskell, Lisp, Closure, Julia, R, Java, Kotlin, Scala, OCaml, JavaScript, Crystal, Ruby, Rust, Swift, Objective-C, Visual Basic, .NET, Pascal, Perl, Lua, PHP and others), I suggest using instagrapi-rest
Support Chat in Telegram and GitHub Discussions
Performs Web API or Mobile API requests depending on the situation (to avoid Instagram limits)
Login by username and password, including 2FA and by sessionid (and uses Authorization header instead Cookies)
Challenge Resolver have Email and SMS handlers
Support upload a Photo, Video, IGTV, Reels, Albums and Stories
Support work with User, Media, Comment, Insights, Collections, Location (Place), Hashtag and Direct Message objects
Like, Follow, Edit account (Bio) and much more else
Insights by account, posts and stories
Build stories with custom background, font animation, link sticker and mention users
In the next release, account registration and captcha passing will appear
Telegram Bot for Download Posts, Stories and Highlights
pip install instagrapi
from instagrapi import Clientcl = Client()cl.login(ACCOUNT_USERNAME, ACCOUNT_PASSWORD)user_id = cl.user_id_from_username(ACCOUNT_USERNAME)medias = cl.user_medias(user_id, 20)
from instagrapi import Clientfrom instagrapi.types import StoryMention, StoryMedia, StoryLink, StoryHashtagcl = Client()cl.login(USERNAME, PASSWORD, verification_code="<2FA CODE HERE>")media_pk = cl.media_pk_from_url('https://www.instagram.com/p/CGgDsi7JQdS/')media_path = cl.video_download(media_pk)subzeroid = cl.user_info_by_username('subzeroid')hashtag = cl.hashtag_info('dhbastards')cl.video_upload_to_story( media_path, "Credits @subzeroid", mentions=[StoryMention(user=subzeroid, x=0.49892962, y=0.703125, width=0.8333333333333334, height=0.125)], links=[StoryLink(webUri='https://github.com/subzeroid/instagrapi')], hashtags=[StoryHashtag(hashtag=hashtag, x=0.23, y=0.32, width=0.5, height=0.22)], medias=[StoryMedia(media_pk=media_pk, x=0.5, y=0.5, width=0.6, height=0.8)] )
Index
Getting Started
Usage Guide
Interactions
Media
- Publication (also called post): Photo, Video, Album, IGTV and Reels
Resource
- Part of Media (for albums)
MediaOembed
- Short version of Media
Account
- Full private info for your account (e.g. email, phone_number)
TOTP
- 2FA TOTP helpers (generate seed, enable/disable TOTP, generate code as Google Authenticator)
User
- Full public user data
UserShort
- Short public user data (used in Usertag, Comment, Media, Direct Message)
Usertag
- Tag user in Media (coordinates + UserShort)
Location
- GEO location (GEO coordinates, name, address)
Hashtag
- Hashtag object (id, name, picture)
Collection
- Collection of medias (name, picture and list of medias)
Comment
- Comments to Media
Highlight
- Highlights
Notes
- Notes
Story
- Story
StoryLink
- Link Sticker
StoryLocation
- Tag Location in Story (as sticker)
StoryMention
- Mention users in Story (user, coordinates and dimensions)
StoryHashtag
- Hashtag for story (as sticker)
StorySticker
- Tag sticker to story (for example from giphy)
StoryBuild
- StoryBuilder return path to photo/video and mention co-ordinates
DirectThread
- Thread (topic) with messages in Direct Message
DirectMessage
- Message in Direct Message
Insight
- Insights for a post
Track
- Music track (for Reels/Clips)
Best Practices
Development Guide
Handle Exceptions
Challenge Resolver
Exceptions
To release, you need to call the following commands:
python setup.py sdist twine upload dist/*