想保存一些网页,最后找到这 wget 的 shell脚本,虽然不是太理想,亲测可用呢。



使用wget工具抓取网页和图片   来源 https://my.oschina.net/freestyletime/blog/356985



#!/bin/sh

URL="$2"

PATH="$1"

echo "download url: $URL"

echo "download dir: $PATH"

/usr/bin/wget -e robots=off -w 1 -xq -np -nH -pk -m  -t 1 -P "$PATH" "$URL"

echo "success to download"



脚本的使用方法 ./wget_cc ./download http://www.baidu.com



需要注意的是,我的wget是在/usr/bin目录下(这里必须写全路径),你可以使用which wget这个命令确定你的wget路径所在,然后替换到脚本中就行了。



这里多加了几个参数,解释一下:

-e 用法是‘-e command’

    用来执行额外的.wgetrc命令。就像vim的配置存在.vimrc文件中一样,wget也用.wgetrc文件来存放它的配置。也就是说在wget执行之前,会先执行.wgetrc文件中的配置命令。一个典型的.wgetrc文件可以参考:

    http://www.gnu.org/software/wget/manual/html_node/Sample-Wgetrc.html

    http://www.gnu.org/software/wget/manual/html_node/Wgetrc-Commands.html

    用户可以在不改写.wgetrc文件的情况下,用-e选项指定额外的配置命令。如果想要制定多个配置命令,-e command1 -e command2 ... -e commandN即可。这些制定的配置命令,会在.wgetrc中所有命令之后执行,因此会覆盖.wgetrc中相同的配置项。



    这里robots=off是因为wget默认会根据网站的robots.txt进行操作,如果robots.txt里是User-agent: * Disallow: /的话,wget是做不了镜像或者下载目录的。

    这就是前面为什么下载不了图片和其他资源的原因所在了,因为你要爬的HOST禁止蜘蛛去爬它,而wget使用 -e robots=off 这个选项可以通过这个命令绕过这个限制。

-x 创建镜像网站对应的目录结构

-q 静默下载,即不显示下载信息,你如果想知道wget当前在下载什么资源的话,可以去掉这个选项

-m 它会打开镜像相关的选项,比如无限深度的子目录递归下载。

-t times 某个资源下载失败后的重试下载次数

-w seconds 资源请求下载之间的等待时间(减轻服务器的压力)

剩下有不懂的你就去挖文档吧。

写好后保存退出,执行:

chmod 744 wget_cc

OK,这样脚本就能直接执行,而不用在每条命令前带 /bin/sh 让sh去解释它了。

下面就让脚本执行起来吧!

./wget_cc ./download http://www.baidu.com

下载完成后的目录结构

OK,然后再查看<img>标签中的src属性,

src="img/bd_logo1.png"

果然换成了相对路径啊,大功告成,觉得对您有帮助的请点个赞吧!



========================= 华丽的分割线之后 =================================

信息收集之网站镜像克隆   资料来源 http://www.sqlsec.com/2016/web.html



使用HTTrack复制克隆网站

介绍

HTTrack是一款免费的离线浏览器工具,和wget克隆复制镜像差不多,从服务器抓取HTML文件、图片、以及其他css文件并存储到你的计算机上。Kali 2.0起默认预装了 HTTrack。

使用方法



终端下输入:



httrack



如果没有安装这个工具的话,那就现场安装一下吧,只需要2个命令:



apt-get update

apt-get install httrack



这里提示要输入项目名称、存放网站的路径(默认为 /root/website) 和要克隆的目标站 我们这里以 搜狗浏览器官网为例

我们自定义输入test 然后 按下 回车



sougou



然后默认路径 回车



```

输入想要克隆的网站



http://ie.sougou.com

`` 下面HTTrack提供了一些选项,我们一般选择第二本选项Mirror Web Site(s) with Wizard(具有向导递归层级的镜像网站) 输入:2`

回车 回车 回车 后面的一些基本设置 一般一直回车下去 直到网站开始克隆为止,HTTrack 就开始进行网站克隆了。



========================= 华丽的分割线之后 =================================

ruby 爬虫 Spidr 用法 资料来源 https://my.oschina.net/u/572987/blog/89734



从一个网址开始爬: Spidr.start_at('http://tenderlovemaking.com/')



还有很多,

使用wget工具抓取网页和图片 及 相关工具几个的更多相关文章

  1. 使用wget工具抓取网页和图片 成功尝试

    使用wget工具抓取网页和图片 发表于1年前(2014-12-17 11:29)   阅读(2471) | 评论(14) 85人收藏此文章, 我要收藏 赞7 wget 网页抓取 图片抓取 目录[-] ...

  2. python抓取网页中图片并保存到本地

    #-*-coding:utf-8-*- import os import uuid import urllib2 import cookielib '''获取文件后缀名''' def get_file ...

  3. 抓取网页图片的脚本(javascript)

    抓取网页图片的脚本(javascript) 本文地址: http://blog.csdn.net/caroline_wendy/article/details/24172223 脚本内容 (没有换行) ...

  4. C语言调用curl库抓取网页图片

    思路是先用curl抓取网页源码,然后以关键字寻找出图片网址.   #include <stdio.h> #include <stdlib.h> #include <str ...

  5. C语言调用curl库抓取网页图片(转)

    思路是先用curl抓取网页源码,然后以关键字寻找出图片网址.  范例: #include <stdio.h> #include <stdlib.h> #include < ...

  6. Python抓取网页中的图片到本地

    今天在网上找了个从网页中通过图片URL,抓取图片并保存到本地的例子: #!/usr/bin/env python # -*- coding:utf- -*- # Author: xixihuang # ...

  7. python抓取网页图片

    本人比较喜欢海贼王漫画,所以特意选择了网站http://www.mmonly.cc/ktmh/hzw/list_34_2.html来抓取海贼王的图片. 因为是刚刚学习python,代码写的不好,不要喷 ...

  8. Python3简单爬虫抓取网页图片

    现在网上有很多python2写的爬虫抓取网页图片的实例,但不适用新手(新手都使用python3环境,不兼容python2), 所以我用Python3的语法写了一个简单抓取网页图片的实例,希望能够帮助到 ...

  9. Java 抓取网页中的内容【持续更新】

    背景:前几天复习Java的时候看到URL类,当时就想写个小程序试试,迫于考试没有动手,今天写了下,感觉还不错 内容1. 抓取网页中的URL 知识点:Java URL+ 正则表达式 import jav ...

随机推荐

  1. ECNUOJ 2573 Hub Connection plan

    Hub Connection plan Time Limit:1000MS Memory Limit:65536KB Total Submit:743 Accepted:180 Description ...

  2. Spring-statemachine给end状态设置action

    Spring-statemachine版本:当前最新的1.2.3.RELEASE版本 builder.configureStates() .withStates() .initial(generate ...

  3. TCP/IP具体解释--TCP的分段和IP的分片

    写在前面: 分组能够发生在运输层和网络层.运输层中的TCP会分段,网络层中的IP会分片.IP层的分片很多其它的是为运输层的UDP服务的,因为TCP自己会避免IP的分片,所以使用TCP传输在IP层都不会 ...

  4. Java定时器TimeTask

    package com.alan.timer; import java.util.Calendar;import java.util.Date;import java.util.Timer;impor ...

  5. CentOS6 安装 aria2

    CentOS6 安装 aria2 https://www.jianshu.com/p/31ea7aba5524 http://blog.51cto.com/skypegnu1/1637168 1.先安 ...

  6. DDR工作原理

    DDR SDRAM全称为Double Data Rate SDRAM,中文名为“双倍数据流SDRAM”.DDR SDRAM在原有的SDRAM的基础上改进而来.也正因为如此,DDR能够凭借着转产成本优势 ...

  7. 在IIS中给某一个网站添加binding的坑

    以http为例, 假如ip地址从局域网的地址172.31.212.20改为127.0.0.1 但是网站没法访问了http://172.31.212.20/chile.backoffice/  必须通过 ...

  8. 快速select算法的实现

    代码来自: http://blog.csdn.net/v_JULY_v 算法思想: // Quick_select.cpp : 定义控制台应用程序的入口点. // #include "std ...

  9. SQL server无法启动服务,提示“错误1069: 由于登录失败而无法启动服务”

    原因:大部分情况是你修改了服务器系统的登录密码,而导致SQL服务无法启动. 解决方法:将sql server(mssql server)服务的登录密码改为系统登录密码或本地登录,如下操作步骤: 在wi ...

  10. SQL Server 2008 R2 超详细安装图文教程及问题解决(锐姿公司安装)

    问题点: 1.为了sqlserver与mysql 的安全,建议数据库低权限运行.禁止远程访问 1433与 3306端口等. 2.安装提示.net 3.5没有安装 ,在server2012的添加 3. ...