function getData(proxy) { return new Promise((resolve, reject) => { const options = { url: VPNGATE_API_URL }; if (proxy) resolveProxy(proxy, options); request(options) .on('response', (response) => { if (response.statusCode !== 200) reject(new Error(`Request failed with code ${response.statusCode}`)); }) .on('error', err => reject(networkError(err))) .pipe(through2(filter)) .pipe(csv()) .on('error', reject) .on('end_parsed', resolve); }); }
parseCSV(url) { return new Promise((resolve, reject) => { const rows = []; csv() .fromStream(request.get(url)) .subscribe( (json) => { rows.push(json); }, () => { reject(); }, () => { resolve(rows); } ); }); }
csv({ delimiter: '\t', headers: HEADERS }) .transf(json => { json.translation_id = TRANSLATION; json.chapter = Number(json.chapter); json.verse = Number(json.verse); json.book_id = bookRefs[json.book]; json.book_name = bookNames[json.book]; delete json['book']; }) .on('done', error => { if (error) { console.error('Error parsing file: ', error); } else { console.log('Parsing finished sucessfully.'); } })
app.get('/', (req, res) => { if (req.query.url) { axios.get(req.query.url) .then((response) => { try { csv() .fromString(response.data) .then((jsonObj) => { res.json(jsonObj) }); } catch (err) { res.send(err); } }).catch((err) => { res.status(400); res.send(err); }) } else { let errMsg = { message: "Invalid URL or URL not provided" } res.send(errMsg); } });
//import file from path async function csvParser(filename){ //let csvfile = fs.readFile(path.join(__dirname, filename)) let jsonfileName = filename.slice(0,-3)+'json' //console.log(jsonfileName) let filePath = path.join(__dirname, filename) //console.log(filePath) const rawData = fs.readFile(filePath, {encoding:'utf-8'}, (err,data)=>{ if(err) return console.error(err) //console.log(data.slice(0,1001), '\n','...')//just to see what is getting from the file }) const jsonArray = await csv().fromFile(filePath) //console.log(jsonArray) let result = JSON.stringify(jsonArray, null, 2) console.log(result) fs.writeFile(jsonfileName,result, (error)=>{ if(error) return console.error(error) console.log('json file succesfully created') }) }
csv() .fromFile(`./public/data/${image.name}`) .then(function(jsonArrayObj){ //when parse finished, result will be emitted here. mongoose.connection.db.listCollections({name: 'students'}) .next(function(err, collinfo) { if (collinfo) { mongoose.connection.db.dropCollection('students', function(err, result) { jsonArrayObj.forEach(element => { student.create(element) }); }); }else{ jsonArrayObj.forEach(element => { student.create(element) }); } }); })
return new Promise((resolve, reject) => { csv() .fromStream( request.get( 'https://raw.githubusercontent.com/gigerbytes/ncov-ph-data/master/data/facilities.csv' .subscribe( (json) => { data.push(json);
csv({ delimiter: '\t', headers: HEADERS }) .transf(json => { json.translation_id = TRANSLATION; json.chapter = Number(json.chapter); json.verse = Number(json.verse); json.book_id = bookRefs[json.book]; json.book_name = bookNames[json.book]; delete json['book']; delete json['subverse']; delete json['order']; }) .on('done', error => { if (error) { console.error('Error parsing file: ', error); } else { console.log('Parsing finished sucessfully.'); } })
csv({ delimiter: '\t', headers: HEADERS }) .transf(json => { json.translation_id = TRANSLATION; json.chapter = Number(json.chapter); json.verse = Number(json.verse); json.book_id = bookRefs[json.book]; json.book_name = bookNames[json.book]; delete json['book']; }) .on('done', error => { if (error) { console.error('Error parsing file: ', error); } else { console.log('Parsing finished sucessfully.'); } })
csv({ delimiter: '\t', headers: HEADERS }) .transf(json => { json.translation_id = TRANSLATION; json.chapter = Number(json.chapter); json.verse = Number(json.verse); json.book_id = bookRefs[json.book]; json.book_name = bookNames[json.book]; delete json['book']; }) .on('done', error => { if (error) { console.error('Error parsing file: ', error); } else { console.log('Parsing finished sucessfully.'); } })
csv({ delimiter: '\t', headers: HEADERS }) .transf(json => { json.translation_id = TRANSLATION; json.chapter = Number(json.chapter); json.verse = Number(json.verse); json.book_id = bookRefs[json.book]; json.book_name = bookNames[json.book]; delete json['book']; delete json['subverse']; delete json['order']; }) .on('done', error => { if (error) { console.error('Error parsing file: ', error); } else { console.log('Parsing finished sucessfully.'); } })