SOCMINT tool to get personal infos from an Instagram account via analysis of its followers and/or following

Overview

S T E R R A

๐Ÿ”ญ A SOCMINT tool to get infos from an Instagram acc via its Followers / Following

Allows you to analyse someone's followers, following, and mutuals, with these functions:

  • ๐Ÿ“Š A probability function to determine the close social circle of your target,
  • ๐Ÿ“ฅ Export of the followers / following lists (with their details) to excel and csv,
  • โ„น๏ธ More informations here.
  • ๐Ÿ’ฑ Check the WIKI for the detailed Usage.

Sterra have been recently updated to 2.1, with a lot of new features, but have not been tested on every systems. Everything works, but not handled bugs or errors could happen. If it happen to you, please report it to the Issues section. Thanks :)

โ™ป๏ธ Also a great alternative to Export List of Followers from Instagram, that has been killed.

Here is the result for the accounts followed by Mark Zuckerberg, then for Kylie Jenner :

๐Ÿฆบ Big changes are coming soon, curently working on the wiki for this new version, because it will be much complicated to use.

๐Ÿ“ฅ Installation

  • Via PyPI
pip install sterra
  • Via GitHub
git clone https://github.com/novitae/sterraxcyl
cd sterraxcyl
python setup.py install
# if it fails, use via PyPI

๐Ÿ“Œ Notes

  • Here is a tutorial on how you can find your "sessionid".
  • If you want to extract lists without express mode, it will take a long time. I advise to do something else while the program does the job.
  • If your password contains special characters (and it should...) such as "!", you may enclose it between quotes.
  • It is better if you use an account made specially for the occasion. I do not recommend using your personnal account !
  • The account you will use must have 2FA disabled.
  • If the target account is private, you must be following it to extract data of it.
  • If instagram blocks you, i recommend using another account.
  • This program can be very powerful against most of instagram users, including big accounts: i tried it once one real account (with 250k followers), and it brought me very far. I'm not responsible of its misuse, but don't do shit with it.
  • The program doesn't work on GitPod.

โž• More

This program took me a lot of time; if you appreciate it, feel free to reward my work here:
BTC bc1qjdw2hsspdlw7j9j9qn24gnujnk5thdmt6h2kjh

I will soon have no more time for coding during a certain period (because im joining army). Feel free to work on my program if you want to make it better.
If you want to help this project, here is a "to do" list:

  • Adding probabilities of interests in _pro.py file (actually there's just probabilities of being a personnal accounts)
Comments
  • KeyError: 'The input list must contain (at least) the key

    KeyError: 'The input list must contain (at least) the key "id"'

    Following the example on on the wiki: sterra compare F_ID_1 F_ID_2 --common-usernames

    I have tried the full path to each of the files for comparison , also tried with the file ID's found listed in history for the files im trying to compare but both return KeyError: 'The input list must contain (at least) the key "id"'

    Is this an issue or am I using it incorrectly?

    opened by thenib 4
  • Export Does not work with Python 3.5 3.7 3.8 or 3.9 (did not test others)

    Export Does not work with Python 3.5 3.7 3.8 or 3.9 (did not test others)

    Traceback (most recent call last): File "/home/exspir3/.local/bin/sterra", line 8, in sys.exit(main()) File "/home/exspir3/.local/lib/python3.8/site-packages/sterra/core.py", line 430, in main ret = globals()module.upper() File "/home/exspir3/.local/lib/python3.8/site-packages/sterra/core.py", line 87, in EXPORT scrape(t,l) File "/home/exspir3/.local/lib/python3.8/site-packages/sterra/core.py", line 38, in scrape .p(f"""{username}'s {targlist} usernames file exported under id: {str(bold(exporter([{"username":usn} for usn in flist],,**kwargs)()))}""",logo=logo_to_choose) TypeError: init() missing 2 required positional arguments: 'file_path' and 'Format'

    bug 
    opened by ensingerphilipp 4
  • bunch of followers that i can't export

    bunch of followers that i can't export

    such a good tool! I have problem with exporting the followers username. i tested with 2 or 3 diffrent account several times but each time it's stop under 10000 usernames and i can't resume the exporting. part for exporting is not work for me. the error is: PrivateAccError: --username is a private account that you're not following. after this function didn't go forward and stop. i followed the account but it's not working.

    opened by imankiyumarsi 3
  • HTTP Error 400 (Bad Request) on GraphQL Query.

    HTTP Error 400 (Bad Request) on GraphQL Query.

    Howdy! This looks really useful - getting this error though:

    "HTTP Error 400 (Bad Request) on GraphQL Query. Retrying with shorter page length."

    this is exact error: "anaconda3/lib/python3.7/site-packages/instaloader-4.8.1-py3.7.egg/instaloader/instaloadercontext.py", line 345, in get_json raise QueryReturnedBadRequestException("400 Bad Request") instaloader.exceptions.QueryReturnedBadRequestException: 400 Bad Request"

    Thanks!

    opened by hartmania 3
  • ERROR

    ERROR

    When performing a search as sterra -u xxxxx -t followers, (xxxxx I replace it with a user) I get the following error

    Unknown error, here is the response: {"message": "checkpoint_required", "checkpoint_url": "/ challenge / AXFDryCPIRfCXMzgUoVyguEOsXuhmBvRItoY27ajqfad1f7U-MaDLvlGFXsjnMnwgYVcr8A / OwJmxTBVrender:" flow "0", "lockty" status "flow" falsety} "lockty", falsety "lockty"} "flowtyVcr8A / OwJmxTBVrender:"

    opened by ch4c4l 3
  • Got error for export

    Got error for export

    Hi,

    I am getting the following error when I used the basic usage command: sterra export -ssid mysessid -u tgtuser -t following

    The error I'm getting:

    |ยง| Path /home/ubuntu/.local/lib/python3.8/site-packages/sterra/export/ created.
    |ยง| Path /home/ubuntu/.local/lib/python3.8/site-packages/sterra/parts/ created.
    |ยง| Path /home/ubuntu/.local/lib/python3.8/site-packages/sterra/_history_.json created.
    Traceback (most recent call last):
      File "/home/ubuntu/.local/bin/sterra", line 5, in <module>
        from sterra.core import main
      File "/home/ubuntu/.local/lib/python3.8/site-packages/sterra/core.py", line 10, in <module>
        from sterra.filerra import *
      File "/home/ubuntu/.local/lib/python3.8/site-packages/sterra/filerra.py", line 9, in <module>
        class exporter:
      File "/home/ubuntu/.local/lib/python3.8/site-packages/sterra/filerra.py", line 10, in exporter
        def __init__(self, _:object, List:list[dict], file_path:str, Format:str, **kwargs:dict) -> None:
    TypeError: 'type' object is not subscriptable
    
    opened by mdhz 2
  • Newbie with problem executing sterra

    Newbie with problem executing sterra

    Installed Sterra using pip and manually (git clone).

    After running sterra, I get this:

    Any help will be very appreciated.

    (base) [email protected] ~ % sterra
    Traceback (most recent call last):
      File "/Users/me/opt/anaconda3/bin/sterra", line 33, in <module>
        sys.exit(load_entry_point('sterra==2.2.1', 'console_scripts', 'sterra')())
      File "/Users/me/opt/anaconda3/bin/sterra", line 25, in importlib_load_entry_point
        return next(matches).load()
      File "/Users/me/opt/anaconda3/lib/python3.8/importlib/metadata.py", line 77, in load
        module = import_module(match.group('module'))
      File "/Users/me/opt/anaconda3/lib/python3.8/importlib/__init__.py", line 127, in import_module
        return _bootstrap._gcd_import(name[level:], package, level)
      File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
      File "<frozen importlib._bootstrap>", line 991, in _find_and_load
      File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
      File "<frozen importlib._bootstrap_external>", line 843, in exec_module
      File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
      File "/Users/me/opt/anaconda3/lib/python3.8/site-packages/sterra-2.2.1-py3.8.egg/sterra/core.py", line 10, in <module>
        from sterra.filerra import *
      File "/Users/me/opt/anaconda3/lib/python3.8/site-packages/sterra-2.2.1-py3.8.egg/sterra/filerra.py", line 7, in <module>
        from sterra.exterra import exman
      File "/Users/me/opt/anaconda3/lib/python3.8/site-packages/sterra-2.2.1-py3.8.egg/sterra/exterra.py", line 1, in <module>
        from sterra.histerra import file_id, add_part, add, get_part, match
      File "/Users/me/opt/anaconda3/lib/python3.8/site-packages/sterra-2.2.1-py3.8.egg/sterra/histerra.py", line 79, in <module>
        def get_part(part_option:str=True) -> tuple[str,str]:
    TypeError: 'type' object is not subscriptable
    
    bug 
    opened by numerosos 1
  • Error

    Error

    Hello! I have a error during the export of mutual followers. Attached the screenshot The text:

    Traceback (most recent call last): File "/usr/local/lib/python3.9/dist-packages/sterra-2.1.4-py3.9.egg/sterra/core.py", line 84, in main raise IndexError IndexError

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last): File "/usr/local/bin/sterra", line 33, in sys.exit(load_entry_point('sterra==2.1.4', 'console_scripts', 'sterra')()) File "/usr/local/lib/python3.9/dist-packages/sterra-2.1.4-py3.9.egg/sterra/core.py", line 131, in main _ins.tagram( File "/usr/local/lib/python3.9/dist-packages/sterra-2.1.4-py3.9.egg/sterra/_ins.py", line 340, in tagram mutuals = traction(ul=mutualList, sd=sssid, ai=ex, xp=ex, dl=dl).strt() TypeError: strt() missing 1 required positional argument: 'rtn'

    2022-02-08_22-00-15 .

    opened by sai84 1
  • TargetException

    TargetException

    Hey! When I scrape the followers of a specific account it starts but stops about 30-35% with that error message:

    TargetException: Be sure that you are following the account you are aiming for if it is in private.

    Is there anything I can do about it? Didn't you had a delay function in your script?

    opened by pascallammers 1
  • Best way to reach out ?

    Best way to reach out ?

    Hi,

    I find this project very interesting, what's your preferred channel for a private chat @novitae ? My org. is looking for specialists with your expertise.

    Regards,

    opened by everglad 1
  • login issue

    login issue

    Excited to give the new update a spin!!

    Trying to work through this login issue: "Please check Instagram app for a security confirmation that it is you trying to login."

    I keep acknowledging it was me but to no avail -- might be due to thinking it's a windows 10 phone (who has one of those, right?) -- if I figure it out will update....

    Screen Shot 2021-11-15 at 1 30 45 PM NOT FROM STERRA 
    opened by hartmania 1
  • Rate Limit Error although followers extraction is completed

    Rate Limit Error although followers extraction is completed

    Hey,

    I'm having an issue with resuming a "part" content, I'm using the following command syntax: sterra export -ssid xxx -u xxx -p xxx

    When it hit 100% on the followers extraction, the "RateLimitError" showed, so I didn't use sterra for three days, (usually used it every 24h to finish the extraction phase) now when trying to resume the script with the syntax above - I'm still getting the "RateLimitError".

    When using Instagram on mobile or web, I am able to use the search, like photos, follow etc... To make sure, I ran sterra again but without the "-p" flag using the following: sterra export -ssid xxx -u xxx -t followers and it started the process all over again, which meant it wasn't a rate-limit blockage.

    Also, the "Getting users details" has been completed to 100% (then again rate limit).

    opened by vitguld 8
  • Call sterra directly from python (#2)

    Call sterra directly from python (#2)

    Last issue was force closed, so here again. I tried the solution mentioned before. I have added the running of main here: https://pastebin.com/T3xdg2GG However, it just prints out the default print (not the export not with arguments). It is not calling the new parser() functions, just the old one.

    All I want to do is to get followers directly from python and get a path to the file.

    opened by MiniMinnoww 0
  • Error when exporting to csv

    Error when exporting to csv

    When exporting to a csv file using this command: sterra export -ssid {SSID} -u {Username} -t followers -f csv

    I get an error saying UnicodeEncodeError: 'charmap' codec can't encode characters in position 397-398: character maps to <undefined>

    opened by MiniMinnoww 3
  • Add the ability to resume fetching the follow list

    Add the ability to resume fetching the follow list

    Noticed that when a rate limit occurs when fetching a list of usernames (and before hydrating the profiles), the state is not saved. The script restarts the fetch from the beginning the next time the script is run. This patch adds an option to resume from the last state similar to the existing feature for saving partial fetching of full profiles.

    opened by priscillalam 0
Releases(v2.2-Beta)
Owner
aet
๐Ÿ‡ซ๐Ÿ‡ท
aet
A Bot to get RealTime Tweets to a Specific Chats from Desired Persons on Twitter to Telegram Chat.

TgTwitterStreamer A Bot to get RealTime Tweets to a Specific Chats from Desired Persons on Twitter to Telegram Chat. For Getting ENV's Refer this Link

Anonymous 69 Dec 20, 2022
๐Ÿ The official Python client library for Google's discovery based APIs.

Google API Client This is the Python client library for Google's discovery based APIs. To get started, please see the docs folder. These client librar

Google APIs 6.2k Dec 31, 2022
A Python wrapper for the WooCommerce API.

WooCommerce API - Python Client A Python wrapper for the WooCommerce REST API. Easily interact with the WooCommerce REST API using this library. Insta

WooCommerce 171 Dec 25, 2022
A telegram string extractor bot

Made with Python3 (C) @FayasNoushad Copyright permission under MIT License License - https://github.com/FayasNoushad/String-Extract-Bot/blob/main/LIC

Fayas Noushad 12 Jul 19, 2022
A simple Python wrapper for the archive.is capturing service

archiveis A simple Python wrapper for the archive.is capturing service. Installation pipenv install archiveis Python Usage Import it. import archi

Ben Welsh 157 Dec 28, 2022
An open souce video/music streamer based on MPV and piped.

๐ŸŽถ Harmony Music An easy way to stream videos or music from Youtube from the command line while regaining your privacy. ๐Ÿ“– Table Of Contents โ” What's

Zingy Tomato 16 Nov 15, 2022
Trust-minimized Bitcoin wallet

coldcore Trust-minimized, airgapped Bitcoin management This is experimental software. Wait for a formal release before use with real funds. A trust-mi

James O'Beirne 121 Jan 01, 2023
Aria & Qbittorent Mirror Bot

Eunha Mirror Eunha Mirror is a multipurpose Telegram Bot writen in Python for mirroring files on the Internet to our beloved Google Drive. Features su

ovin 158 Dec 19, 2022
Telegram Group Manager Bot Written In Python Using Pyrogram.

โ”€โ”€ใ€Œ๐‚๐ก๐ข๐ค๐š ๐…๐ฎ๐ฃ๐ข๐ฐ๐š๐ซ๐šใ€โ”€โ”€ Telegram Group Manager Bot Written In Python Using Pyrogram. Deploy To Heroku NOTE: I'm making this note to whoever

Wahyusaputra 3 Feb 12, 2022
An automated tool that fetches information about your crypto stake and generates historical data in time.

Introduction Yield explorer is a WIP! I needed a tool that would show me historical data and performance of my staked crypto but was unable to find a

Sedat Can Yalรงฤฑn 42 Nov 26, 2022
DISCORD script to automate sending messages to a particular server

discord discord script This script sends random quotes to an discord server and tags random users on the server in the process MADE WITH LOVE BY SACS

Solomon ogu 1 Nov 06, 2021
A repository of publicly verifiable token Sale contracts

Token-Sale-Plutus-Contract A repository of publicly verifiable token sale and royalty contracts. This will be the storage solution since it is easily

Logical Mechanism 29 Aug 18, 2022
A Discord token grabber written in Python3, with awesome obfuscation and anti-debug protection.

โ˜ฃ๏ธ Plague โ˜ฃ๏ธ Plague is a Discord token grabber written in Python3, obfuscated with Kramer, protected from traffic analysers with Scarecrow and using t

Billy 125 Dec 20, 2022
Python CMR is an easy to use wrapper to the NASA EOSDIS Common Metadata Repository API.

This repository is a copy of jddeal/python_cmr which is no longer maintained. It has been copied here with the permission of the original author for t

NASA 9 Nov 16, 2022
๐Ÿชฃ Bitbucket Server PAT Generator

๐Ÿชฃ Bitbucket Server PAT Generator ๐Ÿค Introduction Bitbucket Server (nee Stash) can hand out Personal Access Tokens (PAT) to be used in-place of user+p

reecetech 2 May 03, 2022
Cutting-edge GitHub page customization tool

Cutting-edge GitHub page customization tool Want to customize your GitHub user page, but don't know how? Now you can make your profile unique and attr

Igor Vaiman 32 Aug 24, 2022
bot for hearthstone mercenaries

Hearthstone-Mercenaries-game-bot - prevention: Bot is not ready and now on the development stage estimated release date - 21.10.21 The main idea of th

Andrew Efimov 59 Dec 12, 2022
Follow pixiv account from twitter profile

Follow pixiv account from twitter profile

Genshi 7 Apr 11, 2022
A Telegram bot for remotely managing Binance Trade Bot

Binance Trade Bot Manager Telegram A Telegram bot for remotely managing Binance Trade Bot. If you have feature requests please open an issue on this r

Lorenzo Callegari ไนๅญ็ฟ 350 Jan 01, 2023
Nasdaq Cloud Data Service (NCDS) provides a modern and efficient method of delivery for realtime exchange data and other financial information. This repository provides an SDK for developing applications to access the NCDS.

Nasdaq Cloud Data Service (NCDS) Nasdaq Cloud Data Service (NCDS) provides a modern and efficient method of delivery for realtime exchange data and ot

Nasdaq 8 Dec 01, 2022