Echo is able to read tables from a website or a html file and convert it to JSON or CSV. Perfect for saving data from a website and loading it into excel, database, etc.
npm i "echo-table-2-file"
For our examples we will be using the tables from www.coolgithubprojects.com. We use .convert for local HTML files and .convertUrl for online retrieval.
// Site was saved locally in process folder. The follow code will read it and generate the json.
var echo = require('echo-table-2-file');
echo.convert('process', 'output', 'json');
// Here we grab the tables from the site and save the data to a csv (default type).
var echo = require('echo-table-2-file');
echo.convertUrl('https://www.coolgithubprojects.com', 'output');
// Lastly, we filter the tables to only include the month table (based on table ID).
var echo = require('echo-table-2-file');
echo.convertUrl('https://www.coolgithubprojects.com', 'output', 'months');
/* OUTPUT EXAMPLE : ./output/month.csv
"0","Language","Change","Name"
"","JavaScript","+5607","iojs/io.js"
"","Go","+5439","golang/go"
"","Other","+4581","prakhar1989/awesome-courses"
"","JavaScript","+4045","dimsemenov/PhotoSwipe"
"","PHP","+3284","isohuntto/openbay"
...
*/
Pull requests welcome!