wappalyzer-wrapper
v4.4.7
Published
Convenience wrapper around wappalyzer library
Downloads
162
Keywords
Readme
wappalyzer-wrapper
Convenience wrapper around wappalyzer library.
- Cannonicalizes technologies by adding an
id
that remains constant between versions. - Png version of all the logo's with the same name as those ids.
- CDN hosted logo's under https://assets.woorank.com/tech-icons/google-analytics.png
- Easier to use API.
Example:
const wappalyzerWrapper = require('wappalyzer-wrapper');
wappalyzerWrapper.analyze({ html, scripts, headers, js });
// [
// { app: 'Google Analytics',
// version: 'UA',
// id: 'google-analytics',
// categories: [ 'analytics' ] },
// { app: 'jQuery',
// version: '',
// id: 'jquery',
// categories: [ 'javascript-frameworks' ] }
// ]
API
Analyze html, scripts, headers, js, dns TXT and MX records for detecting used technologies.
const wappalyzerWrapper = require('wappalyzer-wrapper');
const url = 'https://example.blogspot.com';
const html = `
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
<!-- Google Tag Manager -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-KAAOEOE"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager -->
</body>
</html>
`;
const scripts = [
'http://www.google-analytics.com/analytics.js',
'http://example.com/assets/js/jquery.min.js'
];
const headers = {
'date': [ 'Thu, 01 Feb 2018 11:34:18 GMT' ],
'connection': [ 'keep-alive' ],
'x-powered-by': [ 'Express' ],
'content-length': [ '293' ],
'content-type': [ 'text/html; charset=utf-8' ]
};
const js = {
'momentjs': { 'moment': { '0': true } },
'google-font-api': { 'WebFonts': { '0': true } }
};
const cookies = {
'phpsessid': [ 'abc123' ],
'fesessionid': [ 'xyz456' ]
};
const meta = {
'generator': [ 'WordPress 5.2.4', 'WooCommerce 3.6.4' ],
'csrf-param': [ 'authenticity_token' ],
'sim.medium': [ 'Home' ]
};
const dnsTxtRecords = [
[ 'facebook-domain-verification=abc123' ],
[ 'google-site-verification=xyz456' ],
[ 'spf2.0/pra include:spf.recurly.com include:amazonses.com ~all' ],
[ 'v=spf1 include:spf.mailjet.com include:spf.recurly.com include:amazonses.com include:spf.mandrillapp.com include:servers.mcsv.net ~all' ]
];
const dnsMxRecords = [
{ exchange: 'alt1.aspmx.l.google.com', priority: 20 },
{ exchange: 'aspmx3.googlemail.com', priority: 30 },
{ exchange: 'aspmx.l.google.com', priority: 10 },
{ exchange: 'aspmx2.googlemail.com', priority: 30 },
{ exchange: 'alt2.aspmx.l.google.com', priority: 20 }
];
const technologies = wappalyzerWrapper.analyze({ url, html, scripts, headers, js, cookies, meta, dnsTxtRecords, dnsMxRecords });
Wappalyzer apps list curated with consistent syntax id's.
const wappalyzerWrapper = require('wappalyzer-wrapper');
const apps = wappalyzerWrapper.apps;
Wappalyzer categories list curated with consistent syntax id's.
const wappalyzerWrapper = require('wappalyzer-wrapper');
const categories = wappalyzerWrapper.categories;
Wappalyzer jsPatterns.
const wappalyzerWrapper = require('wappalyzer-wrapper');
const jsPatterns = wappalyzerWrapper.jsPatterns;
Wappalyzer apps list curated with consistent syntax id's in CSV format in the command line.
npm run apps
Wappalyzer categories list curated with consistent syntax id's in CSV format in the command line.
npm run categories
Debugging
npm run debug-test
- Add
debugger;
statement anywhere in the code to stop the execution. - Type
chrome://inspect/#devices
in your chrome browser. - Click on the remote target to start the debugging console from devtools.
Optimize icons
npm run optimize-icons