【问题标题】:Download or just save an image file from a website using js使用 js 从网站下载或仅保存图像文件
【发布时间】:2009-07-29 11:24:22
【问题描述】:

我想下载或只需要使用 javascript 从网站保存图像文件 在纯编码本身..因为我要下载近1000个jpeg,所以我想写一个函数来调用和下载这些图像。

网址可用,我想从那里下载特定的图片

请指导一下..

【问题讨论】:

  • 否则是否可以从给定的 url 下载所有图像 - 以及原始大小
  • 不清楚,为什么要在JS里做这个?这会成为您网站的一部分吗?如果你需要一个独立的脚本/应用程序,那么 JS 不是适合这项工作的工具。
  • 好的,请告诉我哪一个适合这份工作

标签: javascript jquery html


【解决方案1】:

fileUrl = "http://www.b2hp.com/myProfilePic.jpg";

var xhr = new XMLHttpRequest();
xhr.responseType = 'blob';
xhr.onload = function () {
  var a = document.createElement('a'); // create html element anchor
  a.href = window.URL.createObjectURL(xhr.response); // xhr.response is a blob
  a.download = "TEMP-1.jpg"; // Set the file name.
  a.style.display = 'none'; // set anchor as hidden
  document.body.appendChild(a);
  a.click();
  a.remove()
};
xhr.open('GET', fileUrl);
xhr.send();

【讨论】:

    【解决方案2】:

    在标准浏览器安全上下文中,JavaScript 不允许写入用户的文件系统(缓存的任何副作用除外)。

    您可能能够使用浏览器插件/附加/扩展/等来实现您想要的 - 但即使是如何实现这一点的大致步骤也取决于您所针对的浏览器。

    坦率地说,这听起来更像是 wget 这样的蜘蛛而不是 JavaScript 的工作。

    【讨论】:

      【解决方案3】:

      根据您的需要,您可能需要查看DownThemAll(Firefox 插件)

      它可以让您从网站批量下载链接的图像、电影等。

      请注意,它是一个用户工具,而不是开发者工具,因此您不能以编程方式完成所有工作。

      【讨论】:

        【解决方案4】:

        就像 David 所说,JS 不会这样做。

        您需要独立的download manager,或浏览器plug-in 变体。大多数下载管理器都非常擅长下载一系列文件,例如以“img0001.jpg”开头和以“img9999.jpg”结尾的文件。

        【讨论】:

          【解决方案5】:

          有 Firefox 扩展程序 FlashGot 可以一次性下载页面上的所有图像/音频等。

          【讨论】:

            【解决方案6】:

            如果你想通过代码加载图像,你应该阅读这篇关于图像预加载的文章: http://www.webreference.com/programming/javascript/gr/column3/

            它帮助我构建了一个类来从 URL 中获取图像并在完成时收到通知。

            【讨论】:

              【解决方案7】:

              脚本语言可以很容易地处理这个问题。在这种情况下,使用 BeautifulSoup 尤其是 Python 会相当容易。

              如果您正在寻找,任何可以下载页面并具有可用于解析 HTML 的库的语言都可以正常工作,BS 恰好是我唯一具有广泛知识的语言(因此可以推荐)。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2021-02-14
                • 1970-01-01
                • 1970-01-01
                • 2015-06-07
                • 1970-01-01
                • 1970-01-01
                • 2014-06-08
                • 1970-01-01
                相关资源
                最近更新 更多