【发布时间】:2011-06-05 01:17:18
【问题描述】:
我需要从一个网站获取所有图片,这些图片都包含在一个文件夹中。例如,(site.com/images/.*)。这可能吗?如果是这样,最好的方法是什么?
【问题讨论】:
标签: php javascript linux perl image
我需要从一个网站获取所有图片,这些图片都包含在一个文件夹中。例如,(site.com/images/.*)。这可能吗?如果是这样,最好的方法是什么?
【问题讨论】:
标签: php javascript linux perl image
您有 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;
}
}
}
【讨论】:
如果网站允许索引,您只需wget -r --no-parent @987654321@
【讨论】:
取决于图像目录是否允许列出内容。如果是这样,那就太好了,否则您需要爬取网站才能找到对该目录的所有图像引用。
无论哪种情况,请查看wget。
【讨论】:
如果您想查看网页正在使用的图像:如果您使用的是 Chrome,您只需按 F-12(或在菜单中找到开发人员工具),然后在“资源”选项卡上,左侧有一棵树,然后在 Frames 下,您将看到 Images 文件夹,然后您可以看到其中列出的页面使用的所有图像。
【讨论】: