Initial commit

master
Sven Slootweg 7 years ago
commit ab621b13fd

1
.gitignore vendored

@ -0,0 +1 @@
node_modules

@ -0,0 +1,14 @@
'use strict';
const bhttp = require("bhttp");
const Promise = require("bluebird");
const extractGarbage = require("./lib/extract-garbage");
return Promise.try(() => {
return bhttp.get(process.argv[2]);
}).then((response) => {
let snippets = extractGarbage(response.body.toString());
console.log(snippets.map(snippet => snippet.garbage).join(""));
});

@ -0,0 +1,15 @@
'use strict';
module.exports = function extractGarbage(body) {
let snippetRegex = /(^|[^\n]+\n)([0-9a-f]+)(\s*)($|\n[^\n]+)/g;
let snippets = [];
let match;
while (match = snippetRegex.exec(body)) {
snippets.push({before: match[1], garbage: match[2], whitespace: match[3], after: match[4]});
snippetRegex.lastIndex -= match[4].length; // To allow overlapping matches
}
return snippets;
};

@ -0,0 +1,21 @@
'use strict';
const Promise = require("bluebird");
const bhttp = require("bhttp");
const chalk = require("chalk");
const repeatString = require("repeat-string");
const extractGarbage = require("./lib/extract-garbage");
Promise.map(urls, (url) => {
return Promise.try(() => {
return bhttp.get(process.argv[2]);
}).then((response) => {
let snippets = extractGarbage(response.body.toString());
snippets.forEach((snippet) => {
console.log(`${snippet.before}${chalk.red.bold(snippet.garbage)}${repeatString(".", snippet.whitespace.length)}${snippet.after}`);
console.log("---------");
});
});
});

@ -0,0 +1,18 @@
{
"name": "garbagechecker",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "Sven Slootweg",
"license": "WTFPL",
"dependencies": {
"bhttp": "^1.2.4",
"bluebird": "^3.5.0",
"chalk": "^1.1.3",
"repeat-string": "^1.6.1"
}
}
Loading…
Cancel
Save