{"id":23034723,"url":"https://github.com/ibnaleem/snapscoretracker","last_synced_at":"2025-08-14T17:30:36.392Z","repository":{"id":245880633,"uuid":"819427870","full_name":"ibnaleem/snapscoretracker","owner":"ibnaleem","description":"👻 A Snapscore tracker that reports various metrics such as time differences, score increases, snaps sent and received, snap rates per minute, hour, and day and much more ","archived":false,"fork":false,"pushed_at":"2024-06-26T20:39:02.000Z","size":37,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-06-27T00:55:02.203Z","etag":null,"topics":["numpy","osint","osint-python","osint-resources","osint-tool","osint-tools","pandas","python","snapchat","snapchat-score","snapscore","snapscore-bot","snapscore-tracker","snapscoretracker"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ibnaleem.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-24T13:36:12.000Z","updated_at":"2024-06-26T20:51:50.000Z","dependencies_parsed_at":"2024-06-24T16:39:16.381Z","dependency_job_id":null,"html_url":"https://github.com/ibnaleem/snapscoretracker","commit_stats":null,"previous_names":["ibnaleem/snapscoretracker"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibnaleem%2Fsnapscoretracker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibnaleem%2Fsnapscoretracker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibnaleem%2Fsnapscoretracker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibnaleem%2Fsnapscoretracker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ibnaleem","download_url":"https://codeload.github.com/ibnaleem/snapscoretracker/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229845045,"owners_count":18133194,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["numpy","osint","osint-python","osint-resources","osint-tool","osint-tools","pandas","python","snapchat","snapchat-score","snapscore","snapscore-bot","snapscore-tracker","snapscoretracker"],"created_at":"2024-12-15T16:35:26.410Z","updated_at":"2024-12-15T16:35:26.901Z","avatar_url":"https://github.com/ibnaleem.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cbr/\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://github.com/ibnaleem/snapscoretracker/releases\"\u003e\n    \u003cimg src=\"https://cdn.freebiesupply.com/logos/large/2x/snapchat-logo-png-transparent.png\" alt=\"Logo\" width=\"20%\" height=\"20%\"\u003e\n  \u003c/a\u003e\n  \n  \u003ch2 align=\"center\"\u003eSnapscoreTracker\u003c/h3\u003e\n\n  \u003cp align=\"center\"\u003e\n    👻 A Snapscore tracker that reports various metrics such as time differences, score increases, snaps sent and received, snap rates per minute, hour, and day and much more \n    \u003cbr /\u003e\n    \u003cbr /\u003e\n    \u003ca href=\"https://github.com/ibnaleem/snapscoretracker/issues\"\u003eReport Bugs\u003c/a\u003e\n    \u003ca href=\"#Troubleshooting\"\u003eTroubleshooting\u003c/a\u003e\n  \u003c/p\u003e\n\u003c/div\u003e\n\n---------------------------------------\n| Date                | Time Difference          | Snapscore | Increase | Increase Difference | Snaps Sent | Number of Snaps Sent Since Last Time | Snaps Opened | Number of Snaps Opened Since Last Time | Number of People Snapped | Number of People Snapped Since Last Time | Snap Rate / min     | Snap Rate / hour        | Snap Rate / day      |\n|---------------------|--------------------------|-----------|----------|---------------------|------------|---------------------------------------|--------------|-----------------------------------------|--------------------------|-----------------------------------------|----------------------|-------------------------|----------------------|\n| 2024-06-13 18:46:00 |                          | 179396    | 0        |                     | 0          |                                       | 0            |                                         | 0                        |                                 |                      |                         |                      |\n| 2024-06-13 18:50:00 | 4 minutes                | 179400    | 4        | 4.0                 | 2          | 2.0                                   | 2            | 2.0                                     | 2                        | 2.0                                   | 1.0                  |                         |                      |\n| 2024-06-13 19:04:00 | 14 minutes               | 179405    | 5        | 1.0                 | 2          | 0.0                                   | 3            | -1.0                                    | 2                        | 0.0                                   | 0.3571428571428571    |                         |                      |\n| 2024-06-14 14:29:00 | 19 hours, 25 minutes     | 179512    | 107      | 102.0               | 53         | 51.0                                  | 54           | 51.0                                    | 53                       | 51.0                                  | 0.0918454935622317    | 5.883347421808961       |                      |\n| 2024-06-14 15:40:00 | 1 hours, 11 minutes      | 179514    | 2        | -105.0              | 1          | -52.0                                 | 1            | -51.0                                   | 1                        | -52.0                                 | 0.028169014084507     | 1.6901408450704225      |                      |\n| 2024-06-14 15:46:00 | 6 minutes                | 179518    | 4        | 2.0                 | 2          | 1.0                                   | 2            | 1.0                                     | 2                        | 1.0                                   | 0.6666666666666666    |                         |                      |\n| 2024-06-14 15:56:00 | 10 minutes               | 179523    | 5        | 1.0                 | 2          | 0.0                                   | 3            | -1.0                                    | 2                        | 0.0                                   | 0.5                  |                         |                      |\n| 2024-06-14 16:08:00 | 12 minutes               | 179531    | 8        | 3.0                 | 4          | 2.0                                   | 4            | 3.0                                     | 4                        | 2.0                                   | 0.6666666666666666    |                         |                      |\n| 2024-06-14 16:18:00 | 10 minutes               | 179534    | 3        | -5.0                | 1          | -3.0                                  | 2            | -4.0                                    | 1                        | -3.0                                 | 0.3                  |                         |                      |\n| 2024-06-14 16:18:30 | 30 seconds               | 179537    | 3        | 0.0                 | 1          | 0.0                                   | 2            | 0.0                                     | 1                        | 0.0                                   |                      |                         |                      |\n| 2024-06-14 16:52:00 | 33 minutes, 30 seconds   | 179543    | 6        | 3.0                 | 3          | 2.0                                   | 3            | 3.0                                     | 3                        | 2.0                                   | 0.2727272727272727    | 24.507042253521128      |                      |\n| 2024-06-14 17:11:00 | 19 minutes               | 179549    | 6        | 0.0                 | 3          | 0.0                                   | 3            | 0.0                                     | 3                        | 0.0                                   | 0.3157894736842105    |                         |                      |\n| 2024-06-14 17:18:00 | 7 minutes                | 179551    | 2        | -4.0                | 1          | -2.0                                  | 1            | -2.0                                    | 1                        | -2.0                                 | 0.2857142857142857    |                         |                      |\n| 2024-06-14 17:28:00 | 10 minutes               | 179552    | 1        | -1.0                | 0          | -1.0                                  | 1            | -2.0                                    | 0                        | -1.0                                 | 0.1                  |                         |                      |\n| 2024-06-14 18:10:00 | 42 minutes               | 179562    | 10       | 9.0                 | 5          | 5.0                                   | 5            | 6.0                                     | 5                        | 5.0                                   | 0.238095238095238     | 14.615384615384617      |                      |\n| 2024-06-14 19:07:00 | 57 minutes               | 179564    | 2        | -8.0                | 1          | -4.0                                  | 1            | -4.0                                    | 1                        | -4.0                                 | 0.0350877192982456    |                         | 165.6986301369863    |\n\n```\npython3 main.py -h\nusage: Snapscore Tracker [-h] -u USERNAME -s SNAPSCORE [-t TIME] [-a AVERAGE]\n\n👻 A Snapscore tracker that reports various metrics such as time differences,\nscore increases, snaps sent and received, snap rates per minute, hour, and day\nand much more.\n\noptions:\n  -h, --help            show this help message and exit\n  -u USERNAME, --username USERNAME\n                        Snapchat username to track\n  -s SNAPSCORE, --snapscore SNAPSCORE\n                        Snapscore to log\n  -t TIME, --time TIME  The time you want to log the Snapscore in Y-m-d H:M:S\n                        format. Example: 2024-06-15 12:00:00 will log the\n                        Snapscore at 12:00:00 on June 15, 2024. If not\n                        provided, the current time will be used. Use this\n                        feature if you want to log the Snapscore at a specific\n                        time. WARNING: Current time can be inaccurate by an\n                        hour: 2024-06-15 12:00:00 will log the Snapscore at\n                        11:00:00 on June 15, 2024. Using this parameter will\n                        fix this issue.\n  -a AVERAGE, --average AVERAGE\n                        Calculate the mean of a column from the logs\n\nContribute: https://github.com/ibnaleem/snapscoretracker\n```\n## Installation\n\u003e 💡 [Install Python if you don't have it already](https://www.python.org/downloads/)\n#### Clone this repository:\n```\n$ git clone https://github.com/ibnaleem/snapscoretracker.git\n```\n#### Install dependencies:\n```\n$ pip install -r requirements.txt\n```\n#### Create `/logs` directory:\n```\n$ mkdir logs\n```\n#### Create `{username}_logs.csv` file:\n```\n$ touch ibnaleem_logs.csv # replace {username} with the username of the Snapchat account you're tracking\n```\n#### Run the script\n```\n$ python3 main.py -u {username} -s {snapscore} -t {time in Y-m-d H:M:S format}\n```\n## Features\n- `Date` - the date ***you*** logged the Snapscore\n- `Time Difference` - the difference between the previous datetime and the new datetime (eg. a difference of 5 minutes will be reported if you log another snapscore 5 minutes later)\n- `Snapscore` - the Snapscore\n- `Increase` - the increase since the previous snapscore\n- `Increase Difference` - the difference between the previous increase and the new increase (a negative increase implies the person is snapping fewer people than before)\n- `Snaps Sent` - the number of Snaps sent\n- `Number of Snaps Sent Since Last Time` - the difference between the previous `Snaps Sent` and the new `Snaps Sent` (a negative implies the person has sent fewer snaps than before)\n- `Snaps Opened` - the number of Snaps opened\n- `Number of Snaps Openeed Since Last Time` - the difference between the previous `Snaps Opened` and the new `Snaps Opened` (a negative implies the person has opened fewer snaps than before)\n- `Number of People Snapped` - the number of people they've Snapped; equivalent to `Snaps Sent`\n- `Number of People Snapped Since Last Time` - the difference between the previous `NoPSSLT` and the new `NoPSSLT` (a negative implies the person has talked to fewer people than before)\n- `Snap rate / min` - the number of Snaps sent per minute\n- `Snap rate / hour` - the number of Snaps sent per hour \n- `Snap rate / day` - the number of Snaps sent per day\n\n\u003e ⚠️ Only `Increase Difference`, `Number of Snaps Sent Since Last Time`, `Number of Snaps Opened Since Last Time`, `Number of People Snapped Since Last Time` can hold negative values; if any other column contains negative values, you've likely entered a Snapscore less than the previous (e.g entering 170,000 instead of 180,000)\n\u003cdetails close\u003e\n\u003csummary\u003e💡 Calculate Average of a column\u003c/summary\u003e\n\u003cbr\u003e\n  To calculate the mean value of a column, find the column name in the \u003ccode\u003e.csv\u003c/code\u003e file and append it to the \u003ccode\u003e-a\u003c/code\u003e or \u003ccode\u003e--average\u003c/code\u003e argument:\n\u003cpre\u003e$ python3 main.py -u {username} -a Increase\u003c/pre\u003e\nYou may need to wrap the column name in quotes (\u003ccode\u003e\"\"\u003c/code\u003e) if it contains spaces:\n\u003cpre\u003e$ python3 main.py -u {username} -a \"Snap rate / min\"\u003c/pre\u003e\n\u003c/br\u003e\n\u003c/details\u003e\n\n## How It Works\nSnapscore increases by a point under one of the following conditions:\n- you opened a snap (+1)\n- your snap was opened by someone else (+1)\n- you posted on your story (+UNKNOWN)\n\nUsually, a Snapscore increase of 2 means the person sent and received a snap; similarly, an increase of 16 means the user sent and received 8 snaps. This calculation does not show the number of people the person has snapped but indicates the *maximum* number of people they could have snapped, which is `increase // 2`. So, a Snapscore increase of 16 implies the maximum number of people they've snapped is 8.\n\nIf the increase value is even, the number of snaps sent and opened is the same. For example, with an increase of 16, `16 // 2` yields 8 for both snaps sent and received. However, for an odd Snapscore increase, such as 17, the formula `17 // 2` yields 8. Applying this to both snaps sent and opened gives a total of 16, missing one value. \n\u003cdetails close\u003e\n\u003csummary\u003e✅ Even Snapscore Increase\u003c/summary\u003e\n\u003cbr\u003e\n  \u003cpre\u003e\n    Previous Snapscore: 40,000\n    Current Snapscore: 40,004\n    Increase: +4\n    Snaps Sent: Increase // 2 = 4 // 2 = 2\n    Snaps Opened: Increase // 2 = 4 // 2 = 2\n    Increase = Snaps Sent + Snaps Opened = 4 ✅\u003c/pre\u003e\n\u003c/br\u003e\n\u003c/details\u003e\n\n\u003cdetails close\u003e\n\u003csummary\u003e❌ Odd Snapscore Increase\u003c/summary\u003e\n\u003cbr\u003e\n  \u003cpre\u003e\n    Previous Snapscore: 40,000\n    Current Snapscore: 40,005\n    Increase: +5\n    Snaps Sent: Increase // 2 = 5 // 2 = 2\n    Snaps Opened: Increase // 2 = 5 // 2 = 2\n    Increase = Snaps Sent + Snaps Opened = 4 ❌ (sum of Snaps Sent and Snaps Opened should yield 5)\u003c/pre\u003e\n\u003c/br\u003e\n\u003c/details\u003e\n\nTo address this, a new formula is used for `Snaps Opened`: `(increase // 2) + (increase % 2)`. If the increase is even, `increase % 2` is 0, so it doesn't change the result of `increase // 2`, yielding the same value for snaps sent and received. If the increase is odd, `increase % 2` will add the remainder to the floor-divided value.\n\n\u003cdetails close\u003e\n\u003csummary\u003e✅ Modified Formula: Even Snapscore Increase\u003c/summary\u003e\n\u003cbr\u003e\n  \u003cpre\u003e\n    Previous Snapscore: 40,000\n    Current Snapscore: 40,004\n    Increase: +4\n    Snaps Sent: Increase // 2 = 4 // 2 = 2\n    Snaps Opened: (Increase // 2) + (Increase % 2) = (4 // 2) + (4 % 2) = 2 + 0 = 2\n    Increase = Snaps Sent + Snaps Opened = 4 ✅\u003c/pre\u003e\n\u003c/br\u003e\n\u003c/details\u003e\n\n\u003cdetails close\u003e\n\u003csummary\u003e✅ Modified Formula: Odd Snapscore Increase\u003c/summary\u003e\n\u003cbr\u003e\n  \u003cpre\u003e\n    Previous Snapscore: 40,000\n    Current Snapscore: 40,005\n    Increase: +5\n    Snaps Sent: Increase // 2 = 5 // 2 = 2\n    Snaps Opened: (Increase // 2) + (Increase % 2) = (5 // 2) + (5 % 2) = 2 + 1 = 3\n    Increase = Snaps Sent + Snaps Opened = 5 ✅\u003c/pre\u003e\n\u003c/br\u003e\n\u003c/details\u003e\n\n## Troubleshooting\n#### 1. ModuleNotFoundError: No module named '{module name}'\nYou did not install the dependencies: \n```\npip/pip3 install -r requirements.txt\n```\n#### 2. error: externally-managed-environment\nAs per [PEP 668](https://peps.python.org/pep-0668/), \"Python-specific package management tools should neither install nor remove packages into the interpreter’s global context, by default, and should instead guide the end user towards using a virtual environment\" (Thomas et al.). Therefore, you must create a Python virtual environment to install Python packages so it does not conflict with global packages installed on the OS.\n```\n$ python/python3 -m venv ~/myvenv\n$ source ~/myvenv/bin/activate\n(myvenv) $ pip/pip3 install -r requirements.txt\n```\n#### 3. Date is 1 hour behind\nThis is due to daylight savings, sometimes `datetime.datetime.utcnow()` reports a time one hour earlier than the current time. To mitigate this, manually type the datetime in `%Y-%m-%d %HH-%MM-%SS` format.\n\nFor example, if you want to log for 26/06/26 @ 21:13 (that's 09:30PM):\n```\npython3 main.py -u {username} -s {snapscore} -t \"2024-06-26 21:13:00\"\n```\nIndeed, you must use 24-hour time.\n\n## Built With\n- [Python](https://www.python.org/)\n- [Numpy](https://numpy.org/)\n- [Pandas](https://pandas.pydata.org/)\n- [Rich](https://github.com/Textualize/rich)\n## LICENSE\nThis repository is under the [MIT License](https://github.com/ibnaleem/snapscoretracker/blob/main/LICENSE)\n## Created By\n[Ibn Aleem](https://www.linkedin.com/in/shaffan-aleem-b7a852255/)\n\n## Contributing\nI welcome contributions from the community and appreciate the time and effort put into making [SnapscoreTracker](https://github.com/ibnaleem/gnupg-discord) better. To contribute, please follow the guidelines and steps outlined below:\n\n\u003e Note: **_Your pull request will be closed if you do not specify the changes you've made._**\n\n### Fork the Repository\nStart by [forking this repository](https://github.com/ibnaleem/snapscoretracker/fork). You can do this by clicking on the [\"Fork\"](https://github.com/ibnaleem/snapscoretracker/fork) button located at the top right corner of the GitHub page. This will create a personal copy of the repository under your own GitHub account.\n\n### Clone the Repository\nNext, clone the forked repository to your local machine using the following command:\n```bash\n$ git clone https://github.com/yourusername/snapscoretracker.git\n```\nNavigate to the cloned directory:\n```bash \n$ cd snapscoretracker\n```\n### Create a New Branch\nBefore making any changes, it's recommended to create a new branch. This ensures that your changes won't interfere with other contributions and keeps the main branch clean. Use the following command to create and switch to a new branch:\n```bash\n$ git checkout -b branch-name\n```\n### Make the Desired Changes\nNow, you can proceed to make your desired changes to the project. Whether it's fixing bugs, adding new features, improving documentation, or optimising code, your efforts will be instrumental in enhancing the project.\n\n### Commit and Push Changes\nOnce you have made the necessary changes, commit your work using the following commands:\n```bash\n$ git add .\n$ git commit -m \"Your commit message\"\n```\nPush the changes to your forked repository:\n```bash\n$ git push origin branch-name\n```\n### Submit a Pull Request\nHead over to the [original repository](https://github.com/ibnaleem/snapscoretracker) on GitHub and go to the [\"Pull requests\"](https://github.com/ibnaleem/snapscoretracker/pulls) tab.\n1. Click on the \"New pull request\" button.\n2. Select your forked repository and the branch containing your changes.\n3. Provide a clear and informative title for your pull request, and use the description box to explain the modifications you have made. **_Your pull request will be closed if you do not specify the changes you've made._**\n4. Finally, click on the \"Create pull request\" button to submit your changes.\n\n## [PGP Fingerprint](https://github.com/ibnaleem/ibnaleem/blob/main/public_key.asc)\n```\n2024 7EC0 23F2 769E 6618  1C0F 581B 4A2A 862B BADE\n```\n\n![GitHub Opensource](https://img.shields.io/badge/open%20source-yes-orange) ![GitHub Maintained](https://img.shields.io/badge/maintained-yes-yellow) ![Last Commit](https://img.shields.io/github/last-commit/ibnaleem/snapscoretracker) ![Commit Activity](https://img.shields.io/github/commit-activity/w/ibnaleem/snapscoretracker) ![Issues](https://img.shields.io/github/issues/ibnaleem/snapscoretracker) ![Forks](https://img.shields.io/github/forks/ibnaleem/snapscoretracker)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fibnaleem%2Fsnapscoretracker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fibnaleem%2Fsnapscoretracker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fibnaleem%2Fsnapscoretracker/lists"}