Merge branch 'master' into Deprecate/pepper-site-is-no-longer-operating
This commit is contained in:
commit
170ee0b928
|
|
@ -1,39 +1,45 @@
|
|||
#!/usr/bin/env python
|
||||
# This module generates the listing of supported sites which can be found in
|
||||
# sites.md. It also organizes all the sites in alphanumeric order
|
||||
# sites.mdx. It also organizes all the sites in alphanumeric order
|
||||
import json
|
||||
import os
|
||||
|
||||
|
||||
DATA_REL_URI: str = "sherlock_project/resources/data.json"
|
||||
|
||||
DEFAULT_ENCODING = "utf-8"
|
||||
|
||||
# Read the data.json file
|
||||
with open(DATA_REL_URI, "r", encoding="utf-8") as data_file:
|
||||
with open(DATA_REL_URI, "r", encoding=DEFAULT_ENCODING) as data_file:
|
||||
data: dict = json.load(data_file)
|
||||
|
||||
# Removes schema-specific keywords for proper processing
|
||||
social_networks: dict = dict(data)
|
||||
social_networks = data.copy()
|
||||
social_networks.pop('$schema', None)
|
||||
|
||||
# Sort the social networks in alphanumeric order
|
||||
social_networks: list = sorted(social_networks.items())
|
||||
social_networks = sorted(social_networks.items())
|
||||
|
||||
# Make output dir where the site list will be written
|
||||
os.mkdir("output")
|
||||
|
||||
# Write the list of supported sites to sites.md
|
||||
with open("output/sites.mdx", "w") as site_file:
|
||||
site_file.write("---\ntitle: 'List of supported sites'\nsidebarTitle: 'Supported sites'\nicon: 'globe'\ndescription: 'Sherlock currently supports **400+** sites'\n---\n\n")
|
||||
# Write the list of supported sites to sites.mdx
|
||||
with open("output/sites.mdx", "w", encoding=DEFAULT_ENCODING) as site_file:
|
||||
site_file.write("---\n")
|
||||
site_file.write("title: 'List of supported sites'\n")
|
||||
site_file.write("sidebarTitle: 'Supported sites'\n")
|
||||
site_file.write("icon: 'globe'\n")
|
||||
site_file.write("description: 'Sherlock currently supports **400+** sites'\n")
|
||||
site_file.write("---\n\n")
|
||||
|
||||
for social_network, info in social_networks:
|
||||
url_main = info["urlMain"]
|
||||
is_nsfw = "**(NSFW)**" if info.get("isNSFW") else ""
|
||||
site_file.write(f"1. [{social_network}]({url_main}) {is_nsfw}\n")
|
||||
|
||||
# Overwrite the data.json file with sorted data
|
||||
with open(DATA_REL_URI, "w") as data_file:
|
||||
with open(DATA_REL_URI, "w", encoding=DEFAULT_ENCODING) as data_file:
|
||||
sorted_data = json.dumps(data, indent=2, sort_keys=True)
|
||||
data_file.write(sorted_data)
|
||||
data_file.write("\n")
|
||||
data_file.write("\n") # Keep the newline after writing data
|
||||
|
||||
print("Finished updating supported site listing!")
|
||||
|
||||
|
|
|
|||
|
|
@ -29,6 +29,10 @@ classifiers = [
|
|||
"Natural Language :: English",
|
||||
"Operating System :: OS Independent",
|
||||
"Programming Language :: Python :: 3",
|
||||
"Programming Language :: Python :: 3.10",
|
||||
"Programming Language :: Python :: 3.11",
|
||||
"Programming Language :: Python :: 3.12",
|
||||
"Programming Language :: Python :: 3.13",
|
||||
"Topic :: Security"
|
||||
]
|
||||
homepage = "https://sherlockproject.xyz/"
|
||||
|
|
|
|||
|
|
@ -11,6 +11,13 @@
|
|||
"urlMain": "https://www.1337x.to/",
|
||||
"username_claimed": "FitGirl"
|
||||
},
|
||||
"Pokemon Forums": {
|
||||
"errorMsg": "User Not Found",
|
||||
"errorType": "message",
|
||||
"url": "https://community.pokemon.com/en-us/profile/{}",
|
||||
"urlMain": "https://community.pokemon.com/en-us/",
|
||||
"username_claimed": "mod_ginger"
|
||||
},
|
||||
"2Dimensions": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://2Dimensions.com/a/{}",
|
||||
|
|
@ -292,7 +299,6 @@
|
|||
"urlMain": "https://bsky.app/",
|
||||
"username_claimed": "mcuban"
|
||||
},
|
||||
|
||||
"BongaCams": {
|
||||
"errorType": "status_code",
|
||||
"isNSFW": true,
|
||||
|
|
@ -1152,10 +1158,10 @@
|
|||
"username_claimed": "blue"
|
||||
},
|
||||
"Ifunny": {
|
||||
"errorType":"status_code",
|
||||
"url":"https://ifunny.co/user/{}",
|
||||
"urlMain":"https://ifunny.co/",
|
||||
"username_claimed":"agua"
|
||||
"errorType": "status_code",
|
||||
"url": "https://ifunny.co/user/{}",
|
||||
"urlMain": "https://ifunny.co/",
|
||||
"username_claimed": "agua"
|
||||
},
|
||||
"IRC-Galleria": {
|
||||
"errorType": "response_url",
|
||||
|
|
@ -1191,6 +1197,12 @@
|
|||
"urlProbe": "https://api.imgur.com/account/v1/accounts/{}?client_id=546c25a59c58ad7",
|
||||
"username_claimed": "blue"
|
||||
},
|
||||
"imood": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://www.imood.com/users/{}",
|
||||
"urlMain": "https://www.imood.com/",
|
||||
"username_claimed": "blue"
|
||||
},
|
||||
"Instagram": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://instagram.com/{}",
|
||||
|
|
@ -1492,15 +1504,13 @@
|
|||
"urlMain": "https://www.motorradfrage.net/",
|
||||
"username_claimed": "gutefrage"
|
||||
},
|
||||
"MuseScore": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://musescore.com/{}",
|
||||
"urlMain": "https://musescore.com/",
|
||||
"username_claimed": "arrangeme",
|
||||
"request_method": "GET"
|
||||
},
|
||||
|
||||
|
||||
"MuseScore": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://musescore.com/{}",
|
||||
"urlMain": "https://musescore.com/",
|
||||
"username_claimed": "arrangeme",
|
||||
"request_method": "GET"
|
||||
},
|
||||
"MyAnimeList": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://myanimelist.net/profile/{}",
|
||||
|
|
@ -1621,11 +1631,10 @@
|
|||
"username_claimed": "blue"
|
||||
},
|
||||
"Open Collective": {
|
||||
"errorMsg": "Oops! Page not found",
|
||||
"errorType": "message",
|
||||
"errorType": "status_code",
|
||||
"url": "https://opencollective.com/{}",
|
||||
"urlMain": "https://opencollective.com/",
|
||||
"username_claimed": "pylapp"
|
||||
"username_claimed": "sindresorhus"
|
||||
},
|
||||
"OpenStreetMap": {
|
||||
"errorType": "status_code",
|
||||
|
|
@ -1695,6 +1704,69 @@
|
|||
"urlMain": "https://pentesterlab.com/",
|
||||
"username_claimed": "0day"
|
||||
},
|
||||
"HotUKdeals": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://www.hotukdeals.com/profile/{}",
|
||||
"urlMain": "https://www.hotukdeals.com/",
|
||||
"username_claimed": "Blue",
|
||||
"request_method": "GET"
|
||||
},
|
||||
"Mydealz": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://www.mydealz.de/profile/{}",
|
||||
"urlMain": "https://www.mydealz.de/",
|
||||
"username_claimed": "blue",
|
||||
"request_method": "GET"
|
||||
},
|
||||
"Chollometro": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://www.chollometro.com/profile/{}",
|
||||
"urlMain": "https://www.chollometro.com/",
|
||||
"username_claimed": "blue",
|
||||
"request_method": "GET"
|
||||
},
|
||||
"PepperNL": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://nl.pepper.com/profile/{}",
|
||||
"urlMain": "https://nl.pepper.com/",
|
||||
"username_claimed": "Dynaw",
|
||||
"request_method": "GET"
|
||||
},
|
||||
"PepperPL": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://www.pepper.pl/profile/{}",
|
||||
"urlMain": "https://www.pepper.pl/",
|
||||
"username_claimed": "FireChicken",
|
||||
"request_method": "GET"
|
||||
},
|
||||
"Preisjaeger": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://www.preisjaeger.at/profile/{}",
|
||||
"urlMain": "https://www.preisjaeger.at/",
|
||||
"username_claimed": "Stefan",
|
||||
"request_method": "GET"
|
||||
},
|
||||
"Pepperdeals": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://www.pepperdeals.se/profile/{}",
|
||||
"urlMain": "https://www.pepperdeals.se/",
|
||||
"username_claimed": "Mark",
|
||||
"request_method": "GET"
|
||||
},
|
||||
"PepperealsUS": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://www.pepperdeals.com/profile/{}",
|
||||
"urlMain": "https://www.pepperdeals.com/",
|
||||
"username_claimed": "Stepan",
|
||||
"request_method": "GET"
|
||||
},
|
||||
"Promodescuentos": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://www.promodescuentos.com/profile/{}",
|
||||
"urlMain": "https://www.promodescuentos.com/",
|
||||
"username_claimed": "blue",
|
||||
"request_method": "GET"
|
||||
},
|
||||
"Periscope": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://www.periscope.tv/{}/",
|
||||
|
|
@ -1868,6 +1940,13 @@
|
|||
"urlMain": "https://www.reddit.com/",
|
||||
"username_claimed": "blue"
|
||||
},
|
||||
"Realmeye": {
|
||||
"errorMsg": "Sorry, but we either:",
|
||||
"errorType": "message",
|
||||
"url": "https://www.realmeye.com/player/{}",
|
||||
"urlMain": "https://www.realmeye.com/",
|
||||
"username_claimed": "rotmg"
|
||||
},
|
||||
"Reisefrage": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://www.reisefrage.net/nutzer/{}",
|
||||
|
|
@ -2175,6 +2254,16 @@
|
|||
"urlProbe": "https://ch.tetr.io/api/users/{}",
|
||||
"username_claimed": "osk"
|
||||
},
|
||||
"TikTok": {
|
||||
"url": "https://www.tiktok.com/@{}",
|
||||
"urlMain": "https://www.tiktok.com",
|
||||
"errorType": "message",
|
||||
"errorMsg": [
|
||||
"\"statusCode\":10221",
|
||||
"Govt. of India decided to block 59 apps"
|
||||
],
|
||||
"username_claimed": "charlidamelio"
|
||||
},
|
||||
"Tiendanube": {
|
||||
"url": "https://{}.mitiendanube.com/",
|
||||
"urlMain": "https://www.tiendanube.com/",
|
||||
|
|
@ -2872,6 +2961,14 @@
|
|||
"urlMain": "https://pikabu.ru/",
|
||||
"username_claimed": "blue"
|
||||
},
|
||||
"Pinterest": {
|
||||
"errorType": "status_code",
|
||||
"errorUrl": "https://www.pinterest.com/",
|
||||
"url": "https://www.pinterest.com/{}/",
|
||||
"urlProbe": "https://www.pinterest.com/oembed.json?url=https://www.pinterest.com/{}/",
|
||||
"urlMain": "https://www.pinterest.com/",
|
||||
"username_claimed": "blue"
|
||||
},
|
||||
"pr0gramm": {
|
||||
"errorType": "status_code",
|
||||
"url": "https://pr0gramm.com/user/{}",
|
||||
|
|
@ -2971,5 +3068,15 @@
|
|||
"urlMain": "https://platzi.com/",
|
||||
"username_claimed": "freddier",
|
||||
"request_method": "GET"
|
||||
},
|
||||
"BabyRu": {
|
||||
"url": "https://www.baby.ru/u/{}",
|
||||
"urlMain": "https://www.baby.ru/",
|
||||
"errorType": "message",
|
||||
"errorMsg": [
|
||||
"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0432\u044b \u0438\u0441\u043a\u0430\u043b\u0438, \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u0430",
|
||||
"\u0414\u043e\u0441\u0442\u0443\u043f \u0441 \u0432\u0430\u0448\u0435\u0433\u043e IP-\u0430\u0434\u0440\u0435\u0441\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d"
|
||||
],
|
||||
"username_claimed": "example"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue