示例一:对方网站使用referer防盗链的情况,需要伪造来路来破解防盗链,然后下载目标文件(下面是抓取某个站2015文件夹下所有图片)
1 | wget -E --referer http://example.com/ -r -m -k http://img.example.com/2015/ |
参数:
-r 递归:对于HTTP主机,wget首先下载URL指定的文件,然后(如果该文件是一个HTML文档的话)递归下载该文件所引用(超级连接)的所有文件(递归深度由参数-l指定);对FTP主机,该参数意味着要下载URL指定的目录中的所有文件,递归方法与HTTP主机类似
-m 镜像:相当于同时使用-r和-N参数
-k 连接转换为本地相对链接
-N 时间戳:该参数指定wget只下载更新的文件,也就是说,与本地目录中的对应文件的长度和最后修改日期一样的文件将不被下载
简单来说基本的用法如下,根据需求添加参数
1 | wget -E --referer http://伪造来路网址/ http://目标网址/要下载的东西 |
防盗链做法:referer防盗链太简单,只能防君子,如何反制?采用token方式防盗链,对下载链接、图片链接加参数引用,需要改程序来支持。
示例二:无防盗链的情况
1 | wget -r -p -np -k http://xxx.com/xxx/ |
参数:
-r 递归
-p –page-requisites(页面必需元素)
-np –no-parent(不追溯至父级)
-k 连接转换为本地相对链接
示例三:
1 | wget -r -np -nd http://example.com/packages/ |
这条命令可以下载 http://example.com 网站上 packages 目录中的所有文件
参数:
-np 的作用是不遍历父目录
-nd 表示不在本机重新创建目录结构
再添加排除某些文件或指定下载的文件类型的参数后是这样的
1 | wget -r -np -nd --accept=iso http://example.com/centos-5/i386/ |
与上一条命令相似,但多加了一个 –accept=iso 选项,这指示 wget 仅下载 i386
目录中所有扩展名为 iso 的文件。你也可以指定多个扩展名,只需用逗号分隔即可
参数:
–accept=LIST 可以接受的文件类型
–reject=LIST 拒绝接受的文件类型
示例四:直接
1 | wget -m -k (-H) http://www.example.com/ |
该命令可用来镜像一个网站,wget 将对链接进行转换。
如果网站中的图像是放在另外的站点,那么可以使用
参数:
-m 镜像:相当于同时使用-r和-N参数
-k 连接转换为本地相对链接
-H 可以目标站主机以外的主机内容,图片单独存放在一个主机上的情况
评论0