Bash 有没有办法使用通配符从域内未指定的URL下载图像?

Bash 有没有办法使用通配符从域内未指定的URL下载图像?,bash,image,http,grep,wget,Bash,Image,Http,Grep,Wget,我想下载上的807口袋妖怪的所有显示图像。例如,我想获得以下图像: 当我点击图像时,我可以看到图像地址遵循某种模式: Bulbasaur: https://cdn.bulbagarden.net/upload/2/21/001Bulbasaur.png Ivysaur: https://cdn.bulbagarden.net/upload/7/73/002Ivysaur.png Venusaur: https://cdn.bulbagarden.net/upload/a/ae/003Venus

我想下载上的807口袋妖怪的所有显示图像。例如,我想获得以下图像:

当我点击图像时,我可以看到图像地址遵循某种模式:

Bulbasaur: https://cdn.bulbagarden.net/upload/2/21/001Bulbasaur.png
Ivysaur: https://cdn.bulbagarden.net/upload/7/73/002Ivysaur.png
Venusaur: https://cdn.bulbagarden.net/upload/a/ae/003Venusaur.png
Charmander: https://cdn.bulbagarden.net/upload/7/73/004Charmander.png
Zeraora: https://cdn.bulbagarden.net/upload/a/a7/807Zeraora.png
……等等。基本上,承载每个图像的URL是某种形式的
https://cdn.bulbagarden.net/upload/*/*/*.png,每个星号表示一个通配符

我的问题是,我不确定在使用bash或wget时如何表示这些通配符。我已尝试使用以下wget命令来获取图像:

wget -A.png -e robots=off -m -k -nv -np -p \ --no-check-certificate --user-agent="Mozilla/5.0 (compatible; Konqueror/3.0.0/10; Linux)" \ https://cdn.bulbagarden.net/upload/
但是,我下载了0个文件中的
0字节
,这意味着无法识别任何文件

我有什么办法可以这样做吗

更新:正如一些人在评论中指出的那样,我需要某种方法来聚合所有单个链接。我已经找到了807口袋妖怪的文章链接。然而,这造成了从链接页面递归检索链接的困境。为了真正获得这些图片,我需要在登陆到文章后点击另外两个链接。我将以图形方式说明我的意思:

  • 从页面中,获取Bulbasaur的页面链接:
  • 在页面中,单击Bulbasaur图像以进入链接到实际png的目录:
  • 最后,从页面获取目标png的图像链接:
    https://cdn.bulbagarden.net/upload/2/21/001Bulbasaur.png
  • 这个过程应该递归地应用于初始列表页面的所有链接 我尝试获得所需结果的命令是:

    wget --recursive --level=1 --no-directories --accept png https://bulbapedia.bulbagarden.net/wiki/List_of_Pokémon_by_National_Pokédex_number
    
    但我得到的只是一个错误:
    er:不支持的方案。


    我几乎是一个白痴,所以我不太确定我到底做错了什么。如何递归地访问图像链接?

    您不能,除非您连接的HTTP服务解释通配符本身。必须将通配符扩展为有效名称。怎么办?HTTP不支持通配符,所以你需要找到链接。在该wiki上找到一个链接到所有相关页面的页面,然后使用wget以一定深度镜像该页面,以获得所需的图像,然后清除其余文件。我已更新了原始帖子,但我现在遇到一个不受支持的方案错误。