0

我是 ExtendScript、Basil.js 和 Javascript 的新手用户。

在看到项目http://basiljs.ch/gallery/ending-the-depression-through-amazon/后,我想知道是否可以简单地获取 Basil.js 脚本/Extendscript/Indesign 从网页中抓取图像并插入它直接进入一个indesign文档。

我是一个初学者,所以如果有人有一个完整的脚本,从目录、函数......带有示例 url、导入、保存、放置......?

这是希望我可以简单地在脚本中输入一个地址,它会收集网页上的所有图像并将它们放入一个 indesign 文档中?

我尝试了他们的示例http://basiljs.ch/tutorials/getting-images-from-urls/ 但是当我复制它并在扩展脚本中运行它时,它只是在搜索我的计算机......

更新*

#includepath "~/Documents/;%USERPROFILE%Documents";
#include "basil/basil.js";

function draw() {
  var url = "https://raw.github.com/basiljs/basil.js/master/lib/basil.png";

  // download the url to a default location, filename according to url:
  // -> "the project folder" + data/download/basil.png
  //b.download(url);

  // download url to a specific location in the project folder:
  // -> "the project folder" + data/download_images_files/basil_logo.png
 // b.download(url, "download_images_files/basil_logo.png");

  // download url to a specific location e.g. to your desktop
  // -> ~/Desktop/basil_logo.png
  var newFile = new File("~/Desktop/basil_logo.png");
  b.download(url, newFile);
}

b.go();

...它在 Basil 的 Core.js 中发现错误 @

var runDrawOnce = function() {
  app.doScript(function() {
    if (typeof glob.draw === 'function') {
      glob.draw();
    }
  }, ScriptLanguage.javascript, undef, UndoModes.ENTIRE_SCRIPT);
};

控制台说...使用 basil.js 1.08 ... sh ~/Documents/basiljs/bundle/lib/download.sh /Users/jamestk/Desktop (地址在这里,我在堆栈溢出方面没有足够的声誉)

Basil.js 错误-> b.shellExecute(): 错误: sh: /Users/jamestk/Documents/basiljs/bundle/lib/download.sh: 没有这样的文件或目录

4

1 回答 1

0

对我们来说,最简单的方法可能是b.shellExecute(cmd)运行一个下载图像的 shell 脚本。

您可以使用wgetfrom shell 从 url 下载所有图像,请参阅这个问题:How do I use Wget to download all Images into a single Folder

您应该确保将图像保存在文档数据目录中。之后,您可以使用 Folder 对象的getFiles()方法获取所有图像:

var myImagesArray = Folder('~/path/to/my/folder').getFiles();

最后,您可以在循环中使用该数组将所有图像放入文档中。

于 2015-12-13T17:23:45.300 回答