wget爬取网站

前言

对于爬虫,大家应该不陌生吧?可能大家不知道,wget其实可以爬取网站。

使用wget

如果想下载http://www.gnu.org/software/wget/manual/中的文件,可以使用wget -r -d --no-parent http://www.gnu.org/software/wget/manual/
,在当前目录下会出现文件夹www.gnu.org/software/wget/manual

选项介绍

-r 递归下载
-d 创建与网站结构相同的目录
-nd 不创建目录(将所有爬下来的文件写入当前目录)
--no-parent 不考虑父目录文件
-l 指定爬取层次
-A.(文件拓展名) 下载.(文件拓展名)的文件
--no-check-certificate 不检查证书

–no-check-certificate危害见http://www.367783.net/hosting/7016.html

小脚本

#!/bin/bash
# Download Website #
wget_cmd="wget -r --no-parent"
if [[ "$@" = *"://"* ]];
then
    i=1
    if [[ "$(eval echo \$$i)" = "-l"* ]];then
    wget_cmd="${wget_cmd} $(eval echo \$$i)"
    i=`expr $i + 1`
    fi
    if [[ "$(eval echo \$$i)" = "-nd" ]];then
    wget_cmd="${wget_cmd} -nd"
    i=`expr $i + 1`
    else
    wget_cmd="${wget_cmd} -d"
    fi
    while [[ $(eval echo \$$i) != *"://"* ]]
    do
        j=$(eval echo \$$i)
        wget_cmd="${wget_cmd} -A.${j}"
        i=`expr $i + 1`
    done
else
    echo "地址为空!"
    exit 2
fi
j=$(eval echo \$$i)
wget_cmd="${wget_cmd} $j"
eval $wget_cmd

请细品!

上一篇:asp.net core host service


下一篇:【windows10】镜像备份以及还原