我正在编写一个脚本来从列表中的 url 下载文件。我遇到的问题是 url 不仅仅指向静态文件,例如file.jpg
,它们往往指向返回文件的 servlet。
我想要做的是下载每个 url 的文件并用通用名称保存它,然后读取它的标题并用适当的扩展名重命名它。(除非有更好的方法)
我怎么能那样做?
我试过使用 mime-magic,但它告诉我无扩展名的文件是目录。
我正在编写一个脚本来从列表中的 url 下载文件。我遇到的问题是 url 不仅仅指向静态文件,例如file.jpg
,它们往往指向返回文件的 servlet。
我想要做的是下载每个 url 的文件并用通用名称保存它,然后读取它的标题并用适当的扩展名重命名它。(除非有更好的方法)
我怎么能那样做?
我试过使用 mime-magic,但它告诉我无扩展名的文件是目录。
它应该使用mime-magic
. 您确定路径正确且路径未指向目录吗?
否则你可以使用命令行工具file --mime /path/to/file
以下是如何使用以下方法检测文件的扩展名mime-magic
:
mime('/path/to/foo.pdf', function (err, type) {
if (err) {
console.error(err.message);
// ERROR: cannot open `/path/to/foo.pdf' (No such file or directory)
} else {
console.log('Detected mime type: %s', type);
// application/pdf
}
});
注意:在 community-wiki 下添加了 sled 的评论作为答案。