2016-04-30 5 views
0

Kann jemand bitte dieses node.js Programm für mich ausführen?führen Sie ein Nodejs-Programm, nicht in der Lage, Modul zu installieren

Ich kann den Xml-Parser nicht in Windows installieren.

//to install xml-parser module in windows type this in cmd: npm install xml-parser 
var fs = require('fs'); 
var parse = require('xml-parser'); 
var xml = fs.readFileSync('sample_table.html'); 
    var get_parser = parse(xml); 
    var in_csv = []; 
    get_parser.root.children.forEach(function(tr) { 
     data.push(tr.children.map(function(td) { 
      return td.content; 
     }).join(',')); 
    }); 
    in_csv = in_csv.join('\r\n'); 
    fs.writeFile('dates.csv', in_csv, function(err){ 
     if(err){ 
      return console.error(err); 
    } 

und das ist sample_table.html

<table> 
<tbody> 
<tr style="color:#333333;background-color:White;"> 
<td>2016-04-28</td> 
<td>RLYUDP-DP</td> 
<td>RELIANCE FIXED HORIZON FUND XXX SERIES 18-- DIVIDEND PAYOUT</td> 
<td>F204KB1254</td> 
<td>10.0000</td> 
<td>KARVY</td> 
</tr> 
<tr style="color:#333333;background-color:White;"> 
<td>2016-04-28</td> 
<td>RLYUGP-GR</td> 
<td>RELIANCE FIXED HORIZON FUND XXX SERIES 18- GROWTH</td> 
<td>YUGP</td> 
<td>10.0000</td> 
<td>KARVY</td> 
</tr> 
<tr style="color:#333333;background-color:White;"> 
<td>2016-04-28</td> 
<td>UTCXDP-DP</td> 
<td>UTI-CAPITAL PROTECTION ORIENTED SCHEME - SERIES VII - IV 1278 DAD PLAN</td> 
<td>CXDP</td> 
<td>N</td> 
<td>INF789FC1691</td> 
<td>10.0000</td> 
<td>KARVY</td> 

</tbody> 
    </table> 

oder Sie können den Link hier https://github.com/suresach/nodejs_scraper

+0

Erhalten Sie einen Fehler, wenn Sie npm installieren xml-Parser? – grimurd

+0

yeahh this: http://StackOverflow.com/Questions/36936873/npm-not-Working-in-Windows? können Sie helfen? – sachsure

+1

In dem Ordner, in dem Sie installieren, sollte eine npm-debug.log-Datei vorhanden sein. Setzen Sie den Inhalt auf pastebin und verknüpfen Sie ihn in Ihrem Problem. – grimurd

Antwort

0

Ich sehe folgen kein Problem mit Knoten oder npm. obwohl sehe ich einen Tippfehler auf Ihrem Code:

replace 
     data.push(tr.children.map(function(td) { 
with 
     in_csv.push(tr.children.map(function(td) { 

Hier ist die Ausgabe von meinem Test:

C:\home\node\codes>node -v 
v6.0.0 

C:\home\node\codes>npm -v 
3.8.6 

C:\home\node\codes>npm install xml-parser 
C:\home\node\codes 
+-- [email protected] 
+-- [email protected] 
`-- [email protected] 

npm WARN enoent ENOENT: no such file or directory, open 'C:\home\node\codes\package.json' 
npm WARN codes No description 
npm WARN codes No repository field. 
npm WARN codes No README data 
npm WARN codes No license field. 

C:\home\node\codes>cat foo.js 
var fs = require('fs'); 
var parse = require('xml-parser'); 
var xml = fs.readFileSync('sample_table.html', 'utf8'); 
var get_parser = parse(xml); 
var in_csv = []; 
get_parser.root.children.forEach(function(tr) { 
     in_csv.push(tr.children.map(function(td) { 
      return td.content; 
     }).join(',')); 
    }); 
    in_csv = in_csv.join('\r\n'); 

    fs.writeFile('dates.csv', in_csv, function(err){ 
     if(err){ 
      return console.error(err); 
    } 
}); 

C:\home\node\codes>node foo.js 

C:\home\node\codes>cat dates.csv 
,, 
C:\home\node\codes> 
+0

ist, .. ..die Ausgabe dieser .csv-Datei? aber ich will das nicht Was ich will ist, Elemente mit einem Komma zu trennen – sachsure

0

Hier ist die modifizierte Code - im Grunde gibt es eine weitere Re-Richtung in der Mapper-Funktion erforderlich. Hoffe das hilft.

var fs = require('fs'); 
var parse = require('xml-parser'); 
var xml = fs.readFileSync('sample_table.html', 'utf8'); 
var data = []; 
var get_parser = parse(xml); 
var in_csv = []; 
get_parser.root.children.forEach(function(tr) { 

     in_csv.push(tr.children.map(function(td) { 
      return td.children.map(function(child) { 
       return child.content; 
      } 
       ); 
     }).join(',')); 
    }); 
    in_csv = in_csv.join('\r\n'); 

    fs.writeFile('dates.csv', in_csv, function(err){ 
     if(err){ 
      return console.error(err); 
    } 
}); 



C:\home\node\codes>cat dates.csv 
2016-04-28,RLYUDP-DP,RELIANCE FIXED HORIZON FUND XXX SERIES 18-- DIVIDEND PAYOUT,F204KB1254,10.0000,KARVY,2016-04-28,RLYUGP-GR,REL 
IANCE FIXED HORIZON FUND XXX SERIES 18- GROWTH,YUGP,10.0000,KARVY,2016-04-28,UTCXDP-DP,UTI-CAPITAL PROTECTION ORIENTED SCHEME - SE 
RIES VII - IV 1278 DAD PLAN,CXDP,N,INF789FC1691,10.0000,KARVY 
C:\home\node\codes> 
Verwandte Themen