Spaces:
Sleeping
Sleeping
var util = require('util'), | |
exec = require('child_process').exec; | |
var archiver = require('../archiver') | |
module.exports=(io,data)=>{ | |
// download all website assets | |
/** | |
* wget --mirror --convert-links --adjust-extension --page-requisites | |
* --no-parent http://example.org | |
* --mirror – Makes (among other things) the download recursive. | |
* --convert-links – convert all the links (also to stuff like CSS stylesheets) to relative, so it will be suitable for offline viewing. | |
* --adjust-extension – Adds suitable extensions to filenames (html or css) depending on their content-type. | |
* --page-requisites – Download things like CSS style-sheets and images required to properly display the page offline. | |
* --no-parent – When recurring do not ascend to the parent directory. It useful for restricting the download to only a portion of the site. | |
*/ | |
let website =""; | |
const child = exec(`wget -mkEpnp --no-if-modified-since ${data.website}`); | |
// read stdout from the current child. | |
child.stderr.on("data",(response)=>{ | |
if(response.startsWith("Resolving ")) | |
{ | |
website= response.substring(response.indexOf('Resolve ')+11,response.indexOf(' (')) | |
} | |
io.emit(data.token,{progress:response}) | |
}) | |
child.stderr.on('close',(response)=>{ | |
io.emit(data.token,{progress:"Converting"}) | |
archiver(website,io,data) | |
}) | |
} | |