wget-保存给定目录中的所有数据(图像)?

wget-保存给定目录中的所有数据(图像)?

我想要 wget 扫描以下子目录和子子目录:

domain.com/profile/用户名/专辑/

然后从其来源获取每个.jpg 文件。

Wget 应该获取如下文件:

domain.com/profile/用户名/albums/album1/43434

(...)

domain.com/profile/用户名/albums/album6/4343

并从其来源下载每个图像(不幸的是这些图像位于不同的服务器上)。

这可能吗?

我一直在玩 -p -A .jpg 和 -r 1/2/3/4/5,但它抓取了所有内容,例如:

domain.com/profile/anotherusername/albums

domain.com/site/contactus

domain.com/site/anothersite

commercials-for-domain.com/banner/

ETC。

wget -E -H -k -K -p domain.com/profile/username/albums/album1/43434

运行完美但只有一页;我不确定如何“扫描”不同的相册和文件。

我需要这样做,因为我的一个朋友的电脑被盗了,她的所有照片都在这个页面上,其他地方都没有。其中有近 200 张,上面有 div 覆盖,因此很难手动保存它们!

[编辑]

路径树看起来就像这样:

第一级:

domain.com/profile/用户名/专辑/

第二级:

domain.com/profile/username/albums/1,我的生日照片/

domain.com/profile/用户名/albums/2,Photos_From_2011-09-25/

第三级:

domain.com/profile/username/albums/1,我的生日照片/75893989,

domain.com/profile/用户名/albums/2,Photos_From_2011-09-25/74893213,

答案1

好的。2 个相册中的所有照片都已检索到。

至于如何,可以从我的评论和 michail 的评论中确定。

有两张专辑..
http://www.fotka.pl/profil/AlekSanDraa2601/albumy/ 一个有 100 张照片,另一个有 63 张照片。

这是有 100 个的 http://www.megaupload.com/?d=30RWXKN9 这是包含 63 首歌曲的专辑 http://www.megaupload.com/?d=CC27NM41

从这里获取源代码,第一张专辑 http://www.fotka.pl/profil/AlekSanDraa2601/albumy/1,Ja/74892555

提取图像 URL 所有缩略图都以 _72_p.jpg 结尾,我们不想要它们,我们想要更大的版本,它们要求在 URL 中将 amin.fotka 更改为 a.fotka,将 _72_p 更改为 _500_s

第二张专辑也是如此。例如,第二张专辑有 63 张照片 http://www.fotka.pl/profil/AlekSanDraa2601/albumy/2,Fotki_z_2011-09-25/75893982,,1319485161

这是 blist3.txt 以 _72_p 格式列出的所有 JPG 列表 http://pastebin.com/raw.php?i=Y2nXfAXT

你可以用这样的方法得到它..

C:\>type source.txt | grep -oE "http://.*?\.jpg"  >urls

编辑源代码以删除任何杂项部分..例如 HTML 属性,显然不应该存在的东西。 

或者使用这条更好的线路,应该可以得到它们全部而不需要删除任何杂物。

C:\>type source.txt | grep -oE "http://[^ ]*\.jpg"  >urls

您的 URL 比您想要的多,对于第二张专辑,该命令给出了 97 个,而您只想要 URL 中带有 _72_p 的 URL

所以 | grep -E“72_p” 这样你就可以得到你想要的照片列表。

C:\>type list.txt | wc -l

63 看到该文件中有 63,正确的数字。

这就是那张专辑里的所有歌曲。全部 63

wget -i 列表.txt -w 3

http://www.megaupload.com/?d=CC27NM41

这就是全部内容了,两张专辑里一共 163 首歌(100+63)。

这是用来获取 JPG 列表的行
listps2.txt 是一个包含所有 JPG 的文件,包括相关和不相关的。相关文件为 72_p 格式,使用 grep 提取相关文件。然后使用 SED 更改它们。将它们放入“thatfile”中,然后您可以执行 wget -i thatfile -w 3。就像我做的那样。

C:\>type listps2.txt | grep "72_p" | sed "s/_72_p/_500_s/" | sed "s/amin\.fotka/a.fotka/" >thatfile

C:\>wget -i thatfile

相关内容