2016-12-01 2 views
1

Ich versuche, die Tag-Metadaten aus einem JPG-Bild mit NodeJS und dem Exiftool zu bekommen. Dies ist das erste Mal, dass ich NodeJS benutze. Das habe ich versucht: Ich habe NodeJS für Windows installiert. Ich habe ein Bild mit dem Namen t.jpg und im selben Verzeichnis habe ich eine js Datei namens run.jsLese Tags aus JPG mit Exiftool und NodeJS

Das ist die run.js Datei wird

var exif = require('exiftool'); 
var fs = require('fs'); 
fs.readFile('t.jpg', function (err, data) { 
    if (err) { 
     console.log(err); 
    } else { 
     exif.metadata(data, function (err, metadata) { 
      if(err) 
       console.log(err); 
      else 
       console.log(metadata); 
     }); 
    } 
}); 

ich dann ein Kommandozeilenfenster geöffnet und getippt folgendes:

ich nahm ich brauchte, um hinzufügen, was im Code erforderlich war

npm install exiftool 
npm install fs 
node run.js 

ich habe den folgenden Fehler dann:

> node run.js 
events.js:160 
    throw er; // Unhandled 'error' event 
^

Error: write EPIPE 
    at exports._errnoException (util.js:1026:11) 
    at Socket._writeGeneric (net.js:710:26) 
    at Socket._write (net.js:729:8) 
    at doWrite (_stream_writable.js:333:12) 
    at writeOrBuffer (_stream_writable.js:319:5) 
    at Socket.Writable.write (_stream_writable.js:246:11) 
    at Socket.write (net.js:656:40) 
    at Object.exports.metadata (C:\Users\chris\Dropbox\Werk\nodejs\no 
    at C:\Users\chris\Dropbox\Werk\nodejs\run.js:7:10 
    at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:445:3) 

Irgendeine Idee, was mache ich falsch? Was kann ich tun, um zu bekommen, was ich will?

+2

Ich glaube nicht, dass mit Ihrem Code etwas nicht stimmt, es funktioniert für mich. Sieht aus wie ein systembezogenes Problem, wie Berechtigungen, oder "exiftool" nicht in PATH. Können Sie 'exiftool' über die Befehlszeile (CMD oder Powershell) ausführen? – jkondratowicz

+0

Danke ... Ich hatte kein Exiftool in meinem Windows-Ordner. Wenn du das als Antwort schreibst, kann ich dir die Wiederholung geben. – Chris

Antwort

4

Siehe Kommentare ->exiftool muss im System PATH installiert werden. Versuchen Sie exiftool über die Befehlszeile (Cmd oder Powershell) auszuführen, um das problemlos zu testen.

+0

Ich bekomme den gleichen Fehler, obwohl ich exiftool von der Befehlszeile ausführen kann, gleichen Code wie oben. jeder Gedanke? – BelgoCanadian