You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

56 lines
1.2 KiB

4 years ago
# Wappalyzer core
2 years ago
[Wappalyzer](https://www.wappalyzer.com/) identifies technologies on websites.
4 years ago
## Installation
```shell
$ npm i wappalyzer-core
```
## Usage
```javascript
#!/usr/bin/env node
const fs = require('fs')
const Wappalyzer = require('./wappalyzer')
// See https://www.wappalyzer.com/docs/dev/specification or use
// https://raw.githubusercontent.com/wappalyzer/wappalyzer/master/src/categories.json
const categories = JSON.parse(
fs.readFileSync(path.resolve(`./categories.json`))
4 years ago
)
let technologies = {}
for (const index of Array(27).keys()) {
const character = index ? String.fromCharCode(index + 96) : '_'
technologies = {
...technologies,
...JSON.parse(
fs.readFileSync(
path.resolve(`./technologies/${character}.json`)
)
),
}
}
4 years ago
Wappalyzer.setTechnologies(technologies)
Wappalyzer.setCategories(categories)
Wappalyzer.analyze({
4 years ago
url: 'https://example.github.io/',
meta: { generator: ['WordPress'] },
headers: { server: ['Nginx'] },
scriptSrc: ['jquery-3.0.0.js'],
4 years ago
cookies: { awselb: [''] },
html: '<div ng-app="">'
}).then((detections) => {
const results = Wappalyzer.resolve(detections)
4 years ago
console.log(results)
})
4 years ago
```