UNPKG

neoss

Version:

<div align="center"> <h1>neoss</h1> <i>Socket statistics, with a UI.</i> </div> <p align="center"> <a href="https://img.shields.io/github/v/release/pablolec/neoss" target="_blank"> <img src="https://img.shields.io/github/v/release/pablolec/neo

36 lines (29 loc) 1.05 kB
const request = require("request"); const cheerio = require("cheerio"); const fs = require("fs"); async function scrap() { const url = "http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml"; var customHeaderRequest = await request.defaults({ headers: { "User-Agent": "neoss" }, }); var result = {}; console.log("Scraping started."); customHeaderRequest(url, function (error, response, html) { if (!error && response.statusCode == 200) { var $ = cheerio.load(html, { xmlMode: true, }); $("registry > record").each((index, element) => { let port = $(element).find("number").text(); let description = $(element).find("description").text(); if (port.length > 0 && description != "Unassigned" && description != "" && description != "Reserved") { result[port] = description; } }); let data = JSON.stringify(result); fs.writeFileSync("ports.json", data); console.log("File saved."); } }); } scrap();