Skip to content

Instantly share code, notes, and snippets.


arbazkiraak/ Secret

Last active Jul 23, 2020
What would you like to do?
Python Script to Fetch the technologies of given domain using whatruns API and Wappalyzer Web Driver
import requests,json,ast
from Wappalyzer import Wappalyzer, WebPage
wappalyzer = Wappalyzer.latest()
Results = {}
## We are using `skip2` function which uses wappalyzer api functionality to fetch the results:
## Resons : Whatruns doesnt support ip,port , Whatruns doesn't support `url path based technology ex: ``
def Skip2(domain):
webpage = WebPage.new_from_url(str(domain))
res = wappalyzer.analyze(webpage)
Results[str(domain)] = res
### Reasons to like Whatruns : Accurate results, More Results compared to Wappalyzer.
def FetchTechnogolies(domain):
wappalyzer = Wappalyzer.latest()
session = requests.Session()
paramsPost = {"data":"{\"hostname\":\""+str(domain)+"\",\"url\":\""+str(domain)+"\",\"rawhostname\":\""+str(domain)+"\"}"}
headers = {'Content-Type': 'application/x-www-form-urlencoded'}
response ="", data=paramsPost, headers=headers)
loaded = json.loads(response.text)
if loaded['status']:
apps = ast.literal_eval(loaded['apps'])
except KeyError:
get_key = apps.keys()
step_2 = apps[list(get_key)[0]]
all_hooks = apps[list(get_key)[0]].keys()
for i in all_hooks:
for each_inter,each_category in enumerate(step_2[i]):
name = (each_category['name'])
version = (each_category['version'])
except KeyError:
version = None
Results[name] = version
return Results

This comment has been minimized.

Copy link
Owner Author

@arbazkiraak arbazkiraak commented Feb 7, 2019

{'Modernizr': '2.6.2',
 'jQuery': None,
 'Jquery Easing': None,
 'LazyLoad': None,
 'Jquery Waypoints': None,
 'Bootstrap': None,
 'Nginx': '1.14.1'}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment