shotstars


Nameshotstars JSON
Version 1.1 PyPI version JSON
download
home_pageNone
SummaryA tool to track waning stars on Github
upload_time2024-09-10 18:24:11
maintainerNone
docs_urlNone
authorNone
requires_python>=3.7
licenseNone
keywords termux parsing github parser stars osint scraping secrets scanner
VCS
bugtrack_url
requirements requests rich urllib3
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 💫 Shotstars
A unique and over fab tool to track stars on Github.  

> [!IMPORTANT]  
>Github does not provide users with statistics on disappearing stars in the repository. "Shotstars" is trying to resolve this issue and provide such information to the user.  

<img src="https://raw.githubusercontent.com/snooppr/shotstars/main/images/CLI.png" />

The purpose of the “Shotstars” tool is to find accounts from which they once gave stars to repositories,  
but then they were removed and provide such an analysis in a human-readable form (it doesn’t matter,  
you can scan both your own and other people’s projects), as a result, try to do what it doesn’t do Github by default.  
The secondary function of the software is to monitor the thrown stars also at a selected period of time.  

 ---

## ⌨️ Native Installation  
[![Downloads](https://static.pepy.tech/badge/shotstars)](https://www.pepy.tech/projects/shotstars?versions=1.1&versions=0.5&versions=0.2)  

```
$ pip install shotstars
$ shotstars_cli
```

**Ready-made "Shotstars" builds are provided for OS GNU/Linux & Windows & Termux (Python is not required)**  
⬇️[Download Shotstars](https://github.com/snooppr/shotstars/releases "download a ready-made assembly for Windows; GNU/Linux or Termux")  

 ---

## ⚙️ Shotstars supports simulation of results  
A documented software hack - or side function designed to test the script on dead/stable repositories without star movement.  
To simulate the process, the user must scan the new repository once,   
adding it to the database; randomly delete and add any lines to a file  
(OS GNU/Linux and Termux):    
`/home/{user}/ShotStars/results/{repo}/new.txt`  
(OS Windows):  
`C:\Users\{User}\AppData\Local\ShotStars\result\{repo}\new.txt`;  
run a second scan of the same repository.  

 ---

## ⛔️ Github restrictions  
There are restrictions from Github 【**6K stars/hour** from one IP address】, repositories with more than 6K stars do not physically make sense to scan.  
In Shotstars with Github token  you can [bypass the restrictions](https://github.com/snooppr/shotstars/issues/3) and scan repositories up to **500K stars/hour**.  
Steps:  
1) register for an account on Github (if you don’t already have one);  
2) open your profile -> settings -> developer settings -> personal acces tokens -> generate new token;  
3) insert the resulting token (string) into in the field instead of 'None'  
GNU/Linux & Android/Termux::  
`/home/{user}/ShotStars/results/config.ini`  
OS Windows::  
`C:\Users\{User}\AppData\Local\ShotStars\result\config.ini`.  

The Github token belongs to the user, is stored locally and is not transferred or downloaded anywhere.  
You can parse both your own and third-party repositories (by default, registration/authorization/token are not required).  

 ---

## 💾 Scan history  
In Shotstars the scan history is available, now you no longer need to enter or copy/paste the URL each time,
specify the keyword `his/history` instead of the repository url and select the previously scanned repository by number.

 ---

## 🇷🇺 TL;DR  
Github не предоставляет пользователям статистику по исчезающим звездам в репозитории.
"Shotstars" пытается решить этот вопрос и предоставить такую информацию пользователю.
Утилита также отслеживает прибавление звезд, аккумулирует результаты/статистику и мониторит дублирующую активность username's.
Существуют ограничения со стороны Github 【**6K звезд/час** с одного IP адреса】, репозитории с более 6К звезд не имеет физического смысла сканировать.  
В Shotstars с Github-токеном [ограничения можно обойти](https://github.com/snooppr/shotstars/issues/3) и сканировать репозитории до **500K звезд/час**.  
Шаги:  
1) зарегистрируйте аккаунт на Github (если у вас его еще нет);  
2) откройте профиль -> settings -> developer settings -> personal acces tokens -> generate new token;  
3) полученный токен (строку) вставьте в поле заместо 'None' в файл  
OS GNU/Linux & Android/Termux::  
`/home/{user}/ShotStars/results/config.ini`  
OS Windows::  
`C:\Users\{User}\AppData\Local\ShotStars\result\config.ini`.  

Github-токен принадлежит пользователю, хранится локально и никуда не передается и не скачивается.  
Парсить можно, как свои, так и сторонние репозитории *(по умолчанию регистрация/авторизация/токен не требуются)*.  

В Shotstars доступна история сканирований, не нужно теперь каждый раз вводить или копи/пастить url,
укажите вместо url репозитория ключевое слово `his/history` и выберите цифрой ранее сканируемый репозиторий.  

<details>
<summary>Shotstars это скрипт или ПО?</summary>

Существует ли чёткая грань между скриптом и программой? С таким опросом обратился разработчик к IT-сообществу Хабр.  

<img src="https://habrastorage.org/webt/vj/rq/kp/vjrqkptejw8lvhbi1oj8ibkqcn4.jpeg" />  

</details>

 ---

## 🔻 Screenshot gallery  

*1. Shotstars for Windows 7*  
<img src="https://raw.githubusercontent.com/snooppr/shotstars/main/images/shotstars%20Win.png" />  


*2 Shotstars HTML-report*  
<img src="https://raw.githubusercontent.com/snooppr/shotstars/main/images/html-report.png" />  


*3 Shotstars for Android/Termux*  
<img src="https://raw.githubusercontent.com/snooppr/shotstars/main/images/Termux.png" />  


*4 Shotstars Limit Github/API*  
<img src="https://raw.githubusercontent.com/snooppr/shotstars/main/images/Limit.png" />  


*5 Shotstars Scan History*
<img src="https://raw.githubusercontent.com/snooppr/shotstars/main/images/scan_history.png" />  

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "shotstars",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": "termux, parsing, github, parser, stars, OSINT, scraping, secrets, scanner",
    "author": null,
    "author_email": "Snooppr <snoopproject@protonmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/d1/c3/d3c62b5551ffa43e3c4d9036c690c292f2fe66e88f7c9dfea4dad843a282/shotstars-1.1.tar.gz",
    "platform": null,
    "description": "# \ud83d\udcab Shotstars\nA unique and over fab tool to track stars on Github.  \n\n> [!IMPORTANT]  \n>Github does not provide users with statistics on disappearing stars in the repository. \"Shotstars\" is trying to resolve this issue and provide such information to the user.  \n\n<img src=\"https://raw.githubusercontent.com/snooppr/shotstars/main/images/CLI.png\" />\n\nThe purpose of the \u201cShotstars\u201d tool is to find accounts from which they once gave stars to repositories,  \nbut then they were removed and provide such an analysis in a human-readable form (it doesn\u2019t matter,  \nyou can scan both your own and other people\u2019s projects), as a result, try to do what it doesn\u2019t do Github by default.  \nThe secondary function of the software is to monitor the thrown stars also at a selected period of time.  \n\n ---\n\n## \u2328\ufe0f Native Installation  \n[![Downloads](https://static.pepy.tech/badge/shotstars)](https://www.pepy.tech/projects/shotstars?versions=1.1&versions=0.5&versions=0.2)  \n\n```\n$ pip install shotstars\n$ shotstars_cli\n```\n\n**Ready-made \"Shotstars\" builds are provided for OS GNU/Linux & Windows & Termux (Python is not required)**  \n\u2b07\ufe0f[Download Shotstars](https://github.com/snooppr/shotstars/releases \"download a ready-made assembly for Windows; GNU/Linux or Termux\")  \n\n ---\n\n## \u2699\ufe0f Shotstars supports simulation of results  \nA documented software hack - or side function designed to test the script on dead/stable repositories without star movement.  \nTo simulate the process, the user must scan the new repository once,   \nadding it to the database; randomly delete and add any lines to a file  \n(OS GNU/Linux and Termux):    \n`/home/{user}/ShotStars/results/{repo}/new.txt`  \n(OS Windows):  \n`C:\\Users\\{User}\\AppData\\Local\\ShotStars\\result\\{repo}\\new.txt`;  \nrun a second scan of the same repository.  \n\n ---\n\n## \u26d4\ufe0f Github restrictions  \nThere are restrictions from Github \u3010**6K stars/hour** from one IP address\u3011, repositories with more than 6K stars do not physically make sense to scan.  \nIn Shotstars with Github token  you can [bypass the restrictions](https://github.com/snooppr/shotstars/issues/3) and scan repositories up to **500K stars/hour**.  \nSteps:  \n1) register for an account on Github (if you don\u2019t already have one);  \n2) open your profile -> settings -> developer settings -> personal acces tokens -> generate new token;  \n3) insert the resulting token (string) into in the field instead of 'None'  \nGNU/Linux & Android/Termux::  \n`/home/{user}/ShotStars/results/config.ini`  \nOS Windows::  \n`C:\\Users\\{User}\\AppData\\Local\\ShotStars\\result\\config.ini`.  \n\nThe Github token belongs to the user, is stored locally and is not transferred or downloaded anywhere.  \nYou can parse both your own and third-party repositories (by default, registration/authorization/token are not required).  \n\n ---\n\n## \ud83d\udcbe Scan history  \nIn Shotstars the scan history is available, now you no longer need to enter or copy/paste the URL each time,\nspecify the keyword `his/history` instead of the repository url and select the previously scanned repository by number.\n\n ---\n\n## \ud83c\uddf7\ud83c\uddfa TL;DR  \nGithub \u043d\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0443 \u043f\u043e \u0438\u0441\u0447\u0435\u0437\u0430\u044e\u0449\u0438\u043c \u0437\u0432\u0435\u0437\u0434\u0430\u043c \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438.\n\"Shotstars\" \u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0448\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0432\u043e\u043f\u0440\u043e\u0441 \u0438 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0442\u0430\u043a\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e.\n\u0423\u0442\u0438\u043b\u0438\u0442\u0430 \u0442\u0430\u043a\u0436\u0435 \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u0435\u0442 \u043f\u0440\u0438\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0437\u0432\u0435\u0437\u0434, \u0430\u043a\u043a\u0443\u043c\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b/\u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0443 \u0438 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u0442 \u0434\u0443\u0431\u043b\u0438\u0440\u0443\u044e\u0449\u0443\u044e \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c username's.\n\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u0441\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b Github \u3010**6K \u0437\u0432\u0435\u0437\u0434/\u0447\u0430\u0441** \u0441 \u043e\u0434\u043d\u043e\u0433\u043e IP \u0430\u0434\u0440\u0435\u0441\u0430\u3011, \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 \u0441 \u0431\u043e\u043b\u0435\u0435 6\u041a \u0437\u0432\u0435\u0437\u0434 \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u043c\u044b\u0441\u043b\u0430 \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c.  \n\u0412 Shotstars \u0441 Github-\u0442\u043e\u043a\u0435\u043d\u043e\u043c [\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u043e\u0439\u0442\u0438](https://github.com/snooppr/shotstars/issues/3) \u0438 \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 \u0434\u043e **500K \u0437\u0432\u0435\u0437\u0434/\u0447\u0430\u0441**.  \n\u0428\u0430\u0433\u0438:  \n1) \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0443\u0439\u0442\u0435 \u0430\u043a\u043a\u0430\u0443\u043d\u0442 \u043d\u0430 Github (\u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0433\u043e \u0435\u0449\u0435 \u043d\u0435\u0442);  \n2) \u043e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u043f\u0440\u043e\u0444\u0438\u043b\u044c -> settings -> developer settings -> personal acces tokens -> generate new token;  \n3) \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0439 \u0442\u043e\u043a\u0435\u043d (\u0441\u0442\u0440\u043e\u043a\u0443) \u0432\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u0432 \u043f\u043e\u043b\u0435 \u0437\u0430\u043c\u0435\u0441\u0442\u043e 'None' \u0432 \u0444\u0430\u0439\u043b  \nOS GNU/Linux & Android/Termux::  \n`/home/{user}/ShotStars/results/config.ini`  \nOS Windows::  \n`C:\\Users\\{User}\\AppData\\Local\\ShotStars\\result\\config.ini`.  \n\nGithub-\u0442\u043e\u043a\u0435\u043d \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e, \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e \u0438 \u043d\u0438\u043a\u0443\u0434\u0430 \u043d\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u0438 \u043d\u0435 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f.  \n\u041f\u0430\u0440\u0441\u0438\u0442\u044c \u043c\u043e\u0436\u043d\u043e, \u043a\u0430\u043a \u0441\u0432\u043e\u0438, \u0442\u0430\u043a \u0438 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0435 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 *(\u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f/\u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044f/\u0442\u043e\u043a\u0435\u043d \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u044e\u0442\u0441\u044f)*.  \n\n\u0412 Shotstars \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0438\u0441\u0442\u043e\u0440\u0438\u044f \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0439, \u043d\u0435 \u043d\u0443\u0436\u043d\u043e \u0442\u0435\u043f\u0435\u0440\u044c \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437 \u0432\u0432\u043e\u0434\u0438\u0442\u044c \u0438\u043b\u0438 \u043a\u043e\u043f\u0438/\u043f\u0430\u0441\u0442\u0438\u0442\u044c url,\n\u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0432\u043c\u0435\u0441\u0442\u043e url \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f \u043a\u043b\u044e\u0447\u0435\u0432\u043e\u0435 \u0441\u043b\u043e\u0432\u043e `his/history` \u0438 \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0446\u0438\u0444\u0440\u043e\u0439 \u0440\u0430\u043d\u0435\u0435 \u0441\u043a\u0430\u043d\u0438\u0440\u0443\u0435\u043c\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439.  \n\n<details>\n<summary>Shotstars \u044d\u0442\u043e \u0441\u043a\u0440\u0438\u043f\u0442 \u0438\u043b\u0438 \u041f\u041e?</summary>\n\n\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u043b\u0438 \u0447\u0451\u0442\u043a\u0430\u044f \u0433\u0440\u0430\u043d\u044c \u043c\u0435\u0436\u0434\u0443 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u043c \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043e\u0439? \u0421 \u0442\u0430\u043a\u0438\u043c \u043e\u043f\u0440\u043e\u0441\u043e\u043c \u043e\u0431\u0440\u0430\u0442\u0438\u043b\u0441\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043a IT-\u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0443 \u0425\u0430\u0431\u0440.  \n\n<img src=\"https://habrastorage.org/webt/vj/rq/kp/vjrqkptejw8lvhbi1oj8ibkqcn4.jpeg\" />  \n\n</details>\n\n ---\n\n## \ud83d\udd3b Screenshot gallery  \n\n*1. Shotstars for Windows 7*  \n<img src=\"https://raw.githubusercontent.com/snooppr/shotstars/main/images/shotstars%20Win.png\" />  \n\n\n*2 Shotstars HTML-report*  \n<img src=\"https://raw.githubusercontent.com/snooppr/shotstars/main/images/html-report.png\" />  \n\n\n*3 Shotstars for Android/Termux*  \n<img src=\"https://raw.githubusercontent.com/snooppr/shotstars/main/images/Termux.png\" />  \n\n\n*4 Shotstars Limit Github/API*  \n<img src=\"https://raw.githubusercontent.com/snooppr/shotstars/main/images/Limit.png\" />  \n\n\n*5 Shotstars Scan History*\n<img src=\"https://raw.githubusercontent.com/snooppr/shotstars/main/images/scan_history.png\" />  \n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A tool to track waning stars on Github",
    "version": "1.1",
    "project_urls": {
        "Donate": "https://yoomoney.ru/to/4100111364257544",
        "Homepage": "https://github.com/snooppr/shotstars"
    },
    "split_keywords": [
        "termux",
        " parsing",
        " github",
        " parser",
        " stars",
        " osint",
        " scraping",
        " secrets",
        " scanner"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7998859e0d2cc028241a886cde387f52c9ee1e8f8e258f7751510e1bf375be1a",
                "md5": "8597c3e099365ed355c4c0bf65846d03",
                "sha256": "e12a0467b495b548c3aba01d9908726d720daa86a915ae080dd6bf3928540c4e"
            },
            "downloads": -1,
            "filename": "shotstars-1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8597c3e099365ed355c4c0bf65846d03",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 253596,
            "upload_time": "2024-09-10T18:24:03",
            "upload_time_iso_8601": "2024-09-10T18:24:03.350942Z",
            "url": "https://files.pythonhosted.org/packages/79/98/859e0d2cc028241a886cde387f52c9ee1e8f8e258f7751510e1bf375be1a/shotstars-1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d1c3d3c62b5551ffa43e3c4d9036c690c292f2fe66e88f7c9dfea4dad843a282",
                "md5": "ff9e0df8c36424dbaaf3d85d2a771846",
                "sha256": "c9b755f4694d2f416f77f83db61c7a995c1146c337f2b23fe8373fd80e7801b5"
            },
            "downloads": -1,
            "filename": "shotstars-1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "ff9e0df8c36424dbaaf3d85d2a771846",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 257163,
            "upload_time": "2024-09-10T18:24:11",
            "upload_time_iso_8601": "2024-09-10T18:24:11.142658Z",
            "url": "https://files.pythonhosted.org/packages/d1/c3/d3c62b5551ffa43e3c4d9036c690c292f2fe66e88f7c9dfea4dad843a282/shotstars-1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-09-10 18:24:11",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "snooppr",
    "github_project": "shotstars",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "requests",
            "specs": [
                [
                    ">=",
                    "2.31.0"
                ]
            ]
        },
        {
            "name": "rich",
            "specs": [
                [
                    "<=",
                    "13.7.1"
                ]
            ]
        },
        {
            "name": "urllib3",
            "specs": [
                [
                    ">=",
                    "1.26.18"
                ]
            ]
        }
    ],
    "lcname": "shotstars"
}
        
Elapsed time: 4.93218s