Esiste una libreria disponibile in node.js/javascript che consente a un individuo di utilizzare mongoimport
nel codice?Esecuzione di mongoimport all'interno del codice con Javascript/Node.js
A mio parere, mongoimport è un po 'come un file .exe, che devi eseguire prima di poter utilizzare il suo ambiente di input di testo.
E 'possibile eseguire mongoimport nel mio codice e quindi analizzare i comandi che ho bisogno direttamente nel mio codice?
mio algoritmo attuale prevede:
fs.appendFile('log.txt',JSON.stringify(obj, null, 2));
obj è un oggetto che specifica quali funzioni per analizzare in JSON.stringify
con il metodo della node.js res
(che chiede risposte HTTP)
var obj = {};
obj.url = hostNames[i];
obj.statusCode = res.statusCode;
obj.headers = res.headers;
Poi Io uso mongoimport per importare questo documento JSON nel mio MongoDB.
mongoimport --host localhost -db scrapeapp -collection scrape --file log.txt --jsonArray
Questo metodo è ovviamente inefficiente. Mi piacerebbe fare tutti questi passi in una direzione.
aiuto apprezzato
Hai guardato il driver node.js di MongoDB? Questo è ciò che si desidera utilizzare se si desidera parlare direttamente da un servizio node.js a MongoDB. La documentazione è qui: http://docs.mongodb.org/ecosystem/drivers/node-js/ –
Per estendere ciò che James ha detto, penso che tu abbia qualcosa di incomprensibile su ciò per cui mongoimport è usato. La maggior parte delle tue interazioni con mongodb avverrà attraverso un driver. Il driver consente di inserire, aggiornare ed eliminare documenti (oggetti) nel database attraverso una lingua specifica, in questo caso javascript. Mongoimport non dovrebbe essere usato per normali inserimenti nel tuo db, è principalmente usato per importare dati che sono stati esportati da altre fonti, come altri database o applicazioni. – ACE
Hai ragione. Attualmente ho un malinteso con l'uso di MongoDB. Attualmente sto raschiando le intestazioni da un paio (migliaia) di siti, che poi analizzerò tra un paio di mesi. Cambierò il mio algoritmo per fare un'intestazione insert() per intestazione invece di fare un'importazione. Cosa ne pensi? db.scrape.insert (JSON.stringify (obj, null, 2)); – theGreenCabbage