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
🌶️ Give real chat boosting to your discord server.

Chat-Booster Give real chat boosting to your discord server. ✅ Setup: - Add token to scrape messages on server that you whant. - Put the token in

&! Ѵιchy.#0110 36 Nov 04, 2022
Fetch torrent links from nyaa, according to releases by smoke index.

Nyaa - Smoke's index torrent fetcher Description This script parses the local (or online) anime release index (csv format) made by Big Smoke. And uses

Dinank 21 Jun 08, 2022
Python API wrapper library for Convex Value API

convex-value-python Python API wrapper library for Convex Value API. Further Links: Convex Value homepage @ConvexValue on Twitter JB on Twitter Authen

Aaron DeVera 2 May 11, 2022
This is a simple Telegram bot to Delete User Messages based on Groupmembers Votes. Heroku deployable

ibCleaner Bot This is a simple Telegram bot to Delete User Messages based on Groupmembers Votes. Deploy to Heroku Deploy locally Edit config.py and ad

8 Oct 21, 2022
Upvotes and karma for Discord: Heart 💗 or Crush 💔 a comment to give points to an user, or Star ⭐ it to add it to the Best Of!

🤖 Reto Reto is a community-oriented Discord bot, featuring a karma system, a way to reward the best comments, leaderboards, and so much more! React t

Erik Bianco Vera 3 May 07, 2022
A python package for AxisVM

PyAxisVM The package is under development. Follow us on social media, where we'll announce the first release! Overview The PyAxisVM project offers a h

AxisVM - InterCAD 8 Nov 19, 2022
If you only have hash, you can still operate exchange

PTH Exchange If you only have hash, you can still operate exchange This project module is the same as my other project Exchange_SSRF, This project use

Jumbo 37 Dec 26, 2022
Say "good morning" on Discord, in batch, one-click.

🌞 gm Good Morning! Usage Simply copy the channel_list to gm.py and fill authorization_list with authorization token(s). Enjoy. Authorization Please r

e 3 Nov 18, 2022
Python API wrapper around Trello's API

A wrapper around the Trello API written in Python. Each Trello object is represented by a corresponding Python object. The attributes of these objects

Richard Kolkovich 904 Jan 02, 2023
A Python wrapper around the Twitter API.

Python Twitter A Python wrapper around the Twitter API. By the Python-Twitter Developers Introduction This library provides a pure Python interface fo

Mike Taylor 3.4k Jan 01, 2023
Telegram bot for logistic - Telegram bot for logistic

Демонстрационный телеграм-бот для нужд транспортной компании Цель проекта Реализ

M1chigun 1 Feb 05, 2022
Aria/qBittorrent Telegram mirror/leech bot.

Missneha Mirror Leech Bot Aria/qBittorrent Telegram mirror/leech bot. missneha Mirror Leech Bot is a multipurpose Telegram Bot written in Python for m

ACHAL 6 Sep 30, 2022
Drcom-pt-client - Drcom Pt version client with refresh timer

drcom-pt-client Drcom Pt version client with refresh timer Dr.com Pt版本客户端 可用于网页认

4 Nov 16, 2022
Windows版本微信客户端(非网页版)自动化,可实现简单的发送、接收微信消息

wxauto Windows版本微信客户端自动化,可实现简单的发送、接收微信消息

357 Dec 29, 2022
Pixoo-Awesome is a tool to get more out of your Pixoo Devices.

Pixoo-Awesome is a tool to get more out of your Pixoo Devices. It uses the Pixoo-Client to connect to your Pixoo devices and send data to them. I targ

Horo 10 Oct 27, 2022
PRAW, an acronym for "Python Reddit API Wrapper", is a python package that allows for simple access to Reddit's API.

PRAW: The Python Reddit API Wrapper PRAW, an acronym for "Python Reddit API Wrapper", is a Python package that allows for simple access to Reddit's AP

Python Reddit API Wrapper Development 3k Dec 29, 2022
Telegram Group Chat Statistics With Python

Telegram Group Chat Statistics How to Run First add PYTHONPATH in repository root directory enviroment variable by running: export PYTHONPATH=${PWD}

Sina Nazem 3 Apr 18, 2022
JAKYM, Just Another Konsole YouTube-Music. A command line based Youtube music player written in Python with spotify and youtube playlist support

Just Another Konsole YouTube-Music Overview I wanted to create this application so that I could use the command line to play music easily. I often pla

Mayank Jha 73 Jan 01, 2023
Python3 program to control Elgato Ring Light on your local network without Elgato's Control Center software

Elgato Light Controller I'm really happy with my Elgato Key Light from an illumination perspective. However, their control software has been glitchy f

Jeff Tarr 14 Nov 16, 2022
Create light scenes , voice control, ifttt, fuzzywuzzy speech correction and much more with Tuya light bulbs.

LightBox Features: Auto discover tuya lights Set and create moods (aka: light profiles) Change moods via IFTTT List moods via IFTTT FuzzyWuzzy, speech

Robert Nagtegaal 1 Dec 20, 2021