user-scanner 1.0.3.1__tar.gz → 1.0.4.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/PKG-INFO +2 -2
  2. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/README.md +1 -1
  3. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/pyproject.toml +4 -1
  4. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/__main__.py +3 -1
  5. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/core/orchestrator.py +1 -1
  6. user_scanner-1.0.4.1/user_scanner/creator/itch_io.py +45 -0
  7. user_scanner-1.0.4.1/user_scanner/gaming/steam.py +46 -0
  8. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/version.json +1 -1
  9. user_scanner-1.0.3.1/user_scanner/utils/update.py +0 -0
  10. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/LICENSE +0 -0
  11. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/__init__.py +0 -0
  12. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/cli/__init__.py +0 -0
  13. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/cli/banner.py +0 -0
  14. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/community/__init__.py +0 -0
  15. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/community/coderlegion.py +0 -0
  16. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/core/__init__.py +0 -0
  17. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/creator/__init__.py +0 -0
  18. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/creator/devto.py +0 -0
  19. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/creator/hashnode.py +0 -0
  20. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/creator/kaggle.py +0 -0
  21. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/creator/medium.py +0 -0
  22. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/creator/patreon.py +0 -0
  23. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/dev/__init__.py +0 -0
  24. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/dev/codeberg.py +0 -0
  25. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/dev/cratesio.py +0 -0
  26. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/dev/dockerhub.py +0 -0
  27. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/dev/github.py +0 -0
  28. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/dev/gitlab.py +0 -0
  29. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/dev/launchpad.py +0 -0
  30. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/dev/npmjs.py +0 -0
  31. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/dev/replit.py +0 -0
  32. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/gaming/__init__.py +0 -0
  33. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/gaming/chess_com.py +0 -0
  34. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/gaming/monkeytype.py +0 -0
  35. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/gaming/osu.py +0 -0
  36. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/gaming/roblox.py +0 -0
  37. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/social/__init__.py +0 -0
  38. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/social/bluesky.py +0 -0
  39. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/social/discord.py +0 -0
  40. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/social/instagram.py +0 -0
  41. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/social/mastodon.py +0 -0
  42. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/social/pinterest.py +0 -0
  43. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/social/reddit.py +0 -0
  44. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/social/snapchat.py +0 -0
  45. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/social/telegram.py +0 -0
  46. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/social/threads.py +0 -0
  47. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/social/x.py +0 -0
  48. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/social/youtube.py +0 -0
  49. {user_scanner-1.0.3.1 → user_scanner-1.0.4.1}/user_scanner/utils/version.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: user-scanner
3
- Version: 1.0.3.1
3
+ Version: 1.0.4.1
4
4
  Summary: Check username availability across multiple popular platforms
5
5
  Keywords: username,checker,availability,social,tech,python,user-scanner
6
6
  Author-email: Kaif <kafcodec@gmail.com>
@@ -15,7 +15,7 @@ Project-URL: Homepage, https://github.com/kaifcodec/user-scanner
15
15
 
16
16
  ![1000136215](https://github.com/user-attachments/assets/49ec8d24-665b-4115-8525-01a8d0ca2ef4)
17
17
  <p align="center">
18
- <img src="https://img.shields.io/badge/Version-1.0.3.0-blueviolet?style=for-the-badge&logo=github" />
18
+ <img src="https://img.shields.io/badge/Version-1.0.4.1-blueviolet?style=for-the-badge&logo=github" />
19
19
  <img src="https://img.shields.io/github/issues/kaifcodec/user-scanner?style=for-the-badge&logo=github" />
20
20
  <img src="https://img.shields.io/badge/Tested%20on-Termux-black?style=for-the-badge&logo=termux" />
21
21
  <img src="https://img.shields.io/badge/Tested%20on-Windows-cyan?style=for-the-badge&logo=Windows" />
@@ -2,7 +2,7 @@
2
2
 
3
3
  ![1000136215](https://github.com/user-attachments/assets/49ec8d24-665b-4115-8525-01a8d0ca2ef4)
4
4
  <p align="center">
5
- <img src="https://img.shields.io/badge/Version-1.0.3.0-blueviolet?style=for-the-badge&logo=github" />
5
+ <img src="https://img.shields.io/badge/Version-1.0.4.1-blueviolet?style=for-the-badge&logo=github" />
6
6
  <img src="https://img.shields.io/github/issues/kaifcodec/user-scanner?style=for-the-badge&logo=github" />
7
7
  <img src="https://img.shields.io/badge/Tested%20on-Termux-black?style=for-the-badge&logo=termux" />
8
8
  <img src="https://img.shields.io/badge/Tested%20on-Windows-cyan?style=for-the-badge&logo=Windows" />
@@ -4,7 +4,7 @@ build-backend = "flit_core.buildapi"
4
4
 
5
5
  [project]
6
6
  name = "user-scanner"
7
- version = "1.0.3.1"
7
+ version = "1.0.4.1"
8
8
  description = "Check username availability across multiple popular platforms"
9
9
  readme = "README.md"
10
10
  license = {file = "LICENSE"}
@@ -24,3 +24,6 @@ Homepage = "https://github.com/kaifcodec/user-scanner"
24
24
 
25
25
  [project.scripts]
26
26
  user-scanner = "user_scanner.__main__:main"
27
+
28
+ [tool.flit.sdist]
29
+ exclude = ["tests/", "docs/", ".github/", ".git", "rm_pycache", "che.py", ".gitignore"]
@@ -5,7 +5,6 @@ from colorama import Fore, Style
5
5
  from .cli import banner
6
6
  from .cli.banner import print_banner
7
7
 
8
-
9
8
  CATEGORY_MAPPING = {
10
9
  "dev": "dev",
11
10
  "social": "social",
@@ -58,6 +57,9 @@ def main():
58
57
 
59
58
  args = parser.parse_args()
60
59
 
60
+ if args.module and "." in args.module:
61
+ args.module = args.module.replace(".", "_")
62
+
61
63
  if args.list:
62
64
  list_modules(args.category)
63
65
  return
@@ -23,7 +23,7 @@ def worker_single(module, username, i):
23
23
 
24
24
  func = next((getattr(module, f) for f in dir(module)
25
25
  if f.startswith("validate_") and callable(getattr(module, f))), None)
26
- site_name = module.__name__.split('.')[-1].capitalize()
26
+ site_name = module.__name__.split('.')[-1].capitalize().replace("_",".")
27
27
  if site_name == "X":
28
28
  site_name = "X (Twitter)"
29
29
 
@@ -0,0 +1,45 @@
1
+ import httpx
2
+ from httpx import ConnectError, TimeoutException
3
+
4
+ def validate_itch_io(user):
5
+ """
6
+ Checks if a itch.io username is available.
7
+ Returns: 1 -> available, 0 -> taken, 2 -> error
8
+ """
9
+
10
+ url = f"https://{user}.itch.io"
11
+
12
+ headers = {
13
+ 'User-Agent': "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",
14
+ 'Accept': "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
15
+ 'Accept-Encoding': "gzip, deflate, br",
16
+ 'Accept-Language': "en-US,en;q=0.9",
17
+ 'sec-fetch-dest': "document",
18
+ }
19
+
20
+ try:
21
+ response = httpx.get(url, headers = headers, timeout = 5, follow_redirects=True)
22
+ status = response.status_code
23
+
24
+ if status == 200:
25
+ return 0
26
+ elif status == 404:
27
+ return 1
28
+ else:
29
+ return 2
30
+
31
+ except (ConnectError, TimeoutException):
32
+ return 2
33
+ except Exception as e:
34
+ return 2
35
+
36
+ if __name__ == "__main__":
37
+ user = input ("Username?: ").strip()
38
+ result = validate_itch_io(user)
39
+
40
+ if result == 1:
41
+ print("Available!")
42
+ elif result == 0:
43
+ print("Unavailable!")
44
+ else:
45
+ print("Error occurred!")
@@ -0,0 +1,46 @@
1
+ import httpx
2
+ from httpx import ConnectError, TimeoutException
3
+
4
+ def validate_steam(user):
5
+ """
6
+ Checks if a steam username is available.
7
+ Returns: 1 -> available, 0 -> taken, 2 -> error
8
+ """
9
+
10
+ url = f"https://steamcommunity.com/id/{user}/"
11
+
12
+ headers = {
13
+ 'User-Agent': "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",
14
+ 'Accept': "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
15
+ 'Accept-Encoding': "gzip, deflate, br",
16
+ 'Accept-Language': "en-US,en;q=0.9",
17
+ 'sec-fetch-dest': "document",
18
+ }
19
+
20
+ try:
21
+ response = httpx.get(url, headers = headers, timeout = 5)
22
+
23
+ if response.status_code == 200:
24
+
25
+ if response.text.find("Error</title>") != -1:
26
+ return 1
27
+ else:
28
+ return 0
29
+
30
+ return 2
31
+
32
+ except (ConnectError, TimeoutException):
33
+ return 2
34
+ except Exception as e:
35
+ return 2
36
+
37
+ if __name__ == "__main__":
38
+ user = input ("Username?: ").strip()
39
+ result = validate_steam(user)
40
+
41
+ if result == 1:
42
+ print("Available!")
43
+ elif result == 0:
44
+ print("Unavailable!")
45
+ else:
46
+ print("Error occurred!")
@@ -1,4 +1,4 @@
1
1
  {
2
- "version": "1.0.3.1",
2
+ "version": "1.0.4.1",
3
3
  "version_type": "pypi"
4
4
  }
File without changes
File without changes