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
DragDev Maintained Instance Of discord.py

discord.py - DragDev Flavour A modern, easy to use, feature-rich, and async ready API wrapper for Discord written in Python. The Future of discord.py

DragDev Studios 3 Aug 27, 2022
BoostIRC - IRC Bot which posts boosts to IRC

BoostIRC Quick Start git clone https://github.com/valcanobacon/BoostIRC.git cd B

7 Dec 23, 2022
Terminal-Trade(Panel API) For Binance

Binance-Trade-Project Binance Futures Terminal-Trade(API) & Binance This Project Worth Around 500 Bucks. **I Did This Project For SomeOne And He

Cyber 9 Dec 30, 2021
Python Bot that attends classes, answers polls, and then again waits for classes to start.

LPU_myclass_Bot LPU_myclass_Bot is a Python bot that waits for class to start, attends class, answers polls, and then again waits for another class to

Saurabh Kumar 6 Apr 07, 2022
Python bindings to the Syncthing REST interface.

python-syncthing Python bindings to the Syncthing REST interface. Python API Documentation Syncthing Syncthing REST Documentation Syncthing Forums $ p

Blake VandeMerwe 64 Aug 13, 2022
PokemonGo-Bot - The Pokemon Go Bot, baking with community.

PokemonGo-Bot PokemonGo-Bot is a project created by the PokemonGoF team. Since no public API available for now, a patch to use HASH-Server was applied

3.8k Jan 08, 2023
A bot to share Facebook posts.

bot_share_facebook a bot to share Facebook posts. install & clone untuk menjalankan anda bisa melalui terminal contohnya termux, cmd, dan terminal lai

Muhammad Latif Harkat 7 Dec 07, 2022
Gnosis-py includes a set of libraries to work with Ethereum and Gnosis projects

Gnosis-py Gnosis-py includes a set of libraries to work with Ethereum and Gnosis projects: EthereumClient, a wrapper over Web3.py Web3 client includin

Gnosis 93 Dec 23, 2022
Бот для скачивания треков с Deezer используя ISRC и UPC коды

deez_robot Запуск Установите необходимые библиотеки pip install -r requirements.txt Создайте файл config.py и поместите туда токен бота и ARL-токен De

Max 4 Jul 31, 2022
Jackrabbit Relay is an API endpoint for stock, forex and cryptocurrency exchanges that accept REST webhooks.

JackrabbitRelay Jackrabbit Relay is an API endpoint for stock, forex and cryptocurrency exchanges that accept REST webhooks. Disclaimer Please note RA

Rose Heart 23 Jan 04, 2023
A powerful bot to copy your google drive data to your team drive

⚛️ Clonebot - Heroku version ⚡ CloneBot is a telegram bot that allows you to copy folder/team drive to team drives. One of the main advantage of this

MsGsuite 269 Dec 23, 2022
A simple terminal UI for viewing fund P/L analysis through TEFAS

Tefas UI A simple terminal UI for viewing fund P/L analysis through TEFAS. Features (that my own bank's UI lack): Daily and weekly P/L FX comparisons

Batuhan Taskaya 4 Mar 14, 2022
Balanced API library in python.

Balanced Online Marketplace Payments v1.x requires Balanced API 1.1. Use v0.x for Balanced API 1.0. Installation pip install balanced Usage View Bala

Balanced 70 Oct 04, 2022
HinamiRobot - Telegram Group Manager Bot Written In Python Using Pyrogram

✨ HINAMI CHAN ✨ Telegram Group Manager Bot Written In Python Using Pyrogram. Rea

DARK LEGEND088 2 Jan 27, 2022
High-Resolution Differential Z-Belt Mod for V0 (with optional Kirigami support)

V0-DBM This is a high-resolution differential pulley system belt mod for the Z-axis on Voron 0 with optional Kirigami Bed support. NOTE: Alpha version

Simon Küppers 11 Jan 07, 2023
Pogodasbot - Telegram bot sending channel weather info

Pogodasbot - Telegram bot sending channel weather info

Qayrat Sultan 1 Dec 15, 2022
Frida-based ceserver.iOS analysis is possible with Cheat Engine.

frida-ceserver frida-based ceserver. iOS analysis is possible with Cheat Engine. Original by Dark Byte. Usage Install python library. pip install pack

87 Dec 30, 2022
Pixiv 爬虫,使用 Python 实现。支持批量下载、上传到图床。

用 Python 实现的 Pixiv 爬虫,支持批量下载和上传。 随机图片 API: https://loliapi.ml/ Deploy Github Action 集成部署 建议使用本方法部署,相较于本地部署,无需搭建环境,全程在线上完成。并且使用国外服务器下载、上传,网络更加通畅。 Fork

18 Feb 26, 2022
Telegram Group Manager Bot + Userbot Written In Python Using Pyrogram.

Telegram Group Manager Bot + Userbot Written In Python Using PyrogramTelegram Group Manager Bot + Userbot Written In Python Using Pyrogram

1 Nov 11, 2021
A GitHub Follower Bot that is a WIP.

GitHub Follower Bot (WIP) Work In Progress This bot is a WIP. There are still many features I plan to add and code I need to improve (I'm still fairly

Christian Deacon 71 Dec 29, 2022