【问题标题】:Download all images from a single directory of a website从网站的单个目录下载所有图像
【发布时间】:2011-06-05 01:17:18
【问题描述】:

我需要从一个网站获取所有图片,这些图片都包含在一个文件夹中。例如,(site.com/images/.*)。这可能吗?如果是这样,最好的方法是什么?

【问题讨论】:

    标签: php javascript linux perl image


    【解决方案1】:

    看看HTTrack 软件。它可以下载整个网站。提供网站地址site.com/images/,它将下载此目录中的所有内容。 (如果目录访问不受所有者限制)

    【讨论】:

    • 非常感谢。你救了我,朋友(y)
    • 与 wget -r --no-parent --no-check-certificate xxxxx.png 配合得很好。我添加添加“--no-check-certificate”。
    【解决方案2】:

    您有 FTP 访问权限吗?

    你有 shell 访问权限吗?

    使用 Linux 非常简单。不确定 Windows。

    wget -H -r --level=1 -k -p http://example.com/path/to/images
    

    编辑:刚刚找到wget for windows

    编辑 2:我刚刚看到 PHP 标记,为了创建一个一次性下载所有图像的 PHP 脚本,您必须创建一个 zip(或等效)存档并使用正确的标题发送。 Here is how to zip a folder in php,只提取该文件夹中的图像并不难,只需编辑给出的代码即可:

    foreach ($iterator as $key=>$value) {
        if (!is_dir($key)) {
            $file = basename($key);
            list($name, $ext) = explode('.', $key);
            switch ($ext) {
                case "png":
                case "gif":
                case "jpg":
                    $zip->addFile(realpath($key), $key) or die ("ERROR: Could not add file: $key");
                break;
            }
        }
    }
    

    【讨论】:

      【解决方案3】:

      如果网站允许索引,您只需wget -r --no-parent @987654321@

      【讨论】:

        【解决方案4】:

        取决于图像目录是否允许列出内容。如果是这样,那就太好了,否则您需要爬取网站才能找到对该目录的所有图像引用。

        无论哪种情况,请查看wget

        【讨论】:

          【解决方案5】:

          如果您想查看网页正在使用的图像:如果您使用的是 Chrome,您只需按 F-12(或在菜单中找到开发人员工具),然后在“资源”选项卡上,左侧有一棵树,然后在 Frames 下,您将看到 Images 文件夹,然后您可以看到其中列出的页面使用的所有图像。

          【讨论】:

          • 是否已重命名为 SOURCES?
          猜你喜欢
          • 1970-01-01
          • 2013-12-05
          • 2016-12-31
          • 2013-03-17
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多