wget在没有扩展名的链接上

时间:2011-07-20 08:25:10

标签: wget

我正在我的某个网站上测试wget,它的结构如下:

<a href="/stuff/fancy-stub-url">Fancy Stub</a>
<a href="/stuff/more-fancy-seo-link">Seo Link</a>
<a href="/stuff/somethingIdontwant/#blah">Don't Download me</a>

在每个链接中,我想要一个.png。

wget http://example.com/landing-page \
    --recursive \
    --level=2 \
    --accept '[a-zA-Z-]+',*.png \
    --force-html \
    --base=http://example.com

我认为我需要--level=2 --recursive的原因是因为/more-fancy-seo-link有.png文件,所以我需要点击它们然后点击其中包含的.png文件。这是错误的,因为/more-fancy-seo-link页面已下载且,因为它们没有扩展名。如何让我们按照我的SEO链接,然后下载.png文件?

1 个答案:

答案 0 :(得分:1)

- force-html和--base仅适用于-i选项。

您的'* .png'未在shell中引用,因此将被替换。你可以尝试引用它。

wget http://example.com/landing-page \
    --recursive \
    --level=2 \
    --accept '[a-zA-Z-]+,*.png'

如果失败,您可以尝试:

wget http://example.com/landing-page -O - | \
    wget -i - \
        --recursive \
        --level=2 \
        --accept '*.png' \
        --force-html \
        --base=http://example.com

这将获取HTML文件并将其传送到第二个wget实例以获取PNG。