【发布时间】:2020-06-25 06:08:49
【问题描述】:
我正在尝试使用 NodeJS 和 exiftool 从 JPG 图像中获取标记元数据。这是我第一次使用 NodeJS。这是我尝试过的: 我为 Windows 安装了 NodeJS。我有一个名为 t.jpg 的图像,在同一个目录中我有一个名为 run.js 的 js 文件
这是 run.js 文件
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);
});
}
});
然后我打开一个命令行窗口并输入以下内容:
我认为我需要在代码中添加所需的任何内容
npm install exiftool
npm install fs
node run.js
然后我得到以下错误:
> 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)
知道我做错了什么吗?我该怎么做才能得到我想要的?
【问题讨论】:
-
我不认为你的代码有什么问题,它对我有用。看起来像一些与系统相关的问题,比如权限,或者
exiftool不在 PATH 中。你能从命令行(CMD 或 powershell)运行exiftool吗? -
谢谢...我的 windows 文件夹中没有 exiftool。如果你把这个写成答案,我可以给你代表。
标签: javascript node.js exif exiftool