使用wget工具抓取网页和图片 及 相关工具几个
想保存一些网页,最后找到这 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工具抓取网页和图片 及 相关工具几个的更多相关文章
- 使用wget工具抓取网页和图片 成功尝试
使用wget工具抓取网页和图片 发表于1年前(2014-12-17 11:29) 阅读(2471) | 评论(14) 85人收藏此文章, 我要收藏 赞7 wget 网页抓取 图片抓取 目录[-] ...
- python抓取网页中图片并保存到本地
#-*-coding:utf-8-*- import os import uuid import urllib2 import cookielib '''获取文件后缀名''' def get_file ...
- 抓取网页图片的脚本(javascript)
抓取网页图片的脚本(javascript) 本文地址: http://blog.csdn.net/caroline_wendy/article/details/24172223 脚本内容 (没有换行) ...
- C语言调用curl库抓取网页图片
思路是先用curl抓取网页源码,然后以关键字寻找出图片网址. #include <stdio.h> #include <stdlib.h> #include <str ...
- C语言调用curl库抓取网页图片(转)
思路是先用curl抓取网页源码,然后以关键字寻找出图片网址. 范例: #include <stdio.h> #include <stdlib.h> #include < ...
- Python抓取网页中的图片到本地
今天在网上找了个从网页中通过图片URL,抓取图片并保存到本地的例子: #!/usr/bin/env python # -*- coding:utf- -*- # Author: xixihuang # ...
- python抓取网页图片
本人比较喜欢海贼王漫画,所以特意选择了网站http://www.mmonly.cc/ktmh/hzw/list_34_2.html来抓取海贼王的图片. 因为是刚刚学习python,代码写的不好,不要喷 ...
- Python3简单爬虫抓取网页图片
现在网上有很多python2写的爬虫抓取网页图片的实例,但不适用新手(新手都使用python3环境,不兼容python2), 所以我用Python3的语法写了一个简单抓取网页图片的实例,希望能够帮助到 ...
- Java 抓取网页中的内容【持续更新】
背景:前几天复习Java的时候看到URL类,当时就想写个小程序试试,迫于考试没有动手,今天写了下,感觉还不错 内容1. 抓取网页中的URL 知识点:Java URL+ 正则表达式 import jav ...
随机推荐
- malloc()和free()的原理及实现
在C语言中只能通过malloc()和其派生的函数进行动态的申请内存,而实现的根本是通过系统调用实现的(在linux下是通过sbrk()系统调用实现). malloc()到底从哪里得到了内存空间?答案是 ...
- Win 7中开启Telnet功能
参看以下文章: http://winsystem.ctocio.com.cn/Longhorn/472/8756972.shtml
- 已知二叉树的中序序列为DBGEAFC,后序序列为DGEBFCA,给出相应的二叉树
面对这种问题时我们该怎么解决? 今天写数据结构题.发现了一道总是碰见问题的题在这里我写了一种求解方法我自己称它为分层递归求解. 第一步通过观察我们知道后序遍历时最后一个是根节点A 在中序序列中A的左边 ...
- springboot 统一管理异常信息
新建ResponseEntityExceptionHandler的继承类:(依然,需要入口类扫描) /** * @author sky * @version 1.0 */ @ControllerAdv ...
- POJ 1459 最大流 第二题
http://poj.org/problem?id=1459 也是网络流的基础,只是虚拟出一个源点和终点,对应的生产值和消费值就加到与源点和终点的边上,然后做一次bfs就好了. #include &l ...
- lvs为何不能完全替代DNS轮询--转
原文地址:http://mp.weixin.qq.com/s?__biz=MjM5ODYxMDA5OQ==&mid=2651959595&idx=1&sn=5f0633afd2 ...
- 解决The requested resource is not available的办法
1.问题描述: eclipse中使用tomcat来运行HelloWorld时出现The requested resource is not available. 在报错中有一行Setting prop ...
- web开发快速提高工作效率的一些资源
前端学习资源实在是又多又广,在这样的一个知识的海洋里,我们像一块海绵一样吸收,想要快速提高效率,平时的总结不可缺少,以下总结了一些,排版自我感觉良好,推送出来,后续持续跟新中...... 开发工具 H ...
- UVALive 7146 Defeat The Enemy
Defeat The Enemy Time Limit: 3000MS Memory Limit: Unknown 64bit IO Format: %lld & %llu Long long ...
- CCF模拟题 最优配餐
最优配餐 时间限制: 1.0s 内存限制: 256.0MB 问题描述 栋栋最近开了一家餐饮连锁店,提供外卖服务.随着连锁店越来越多,怎么合理的给客户送餐成为了一个急需解决的问题. 栋栋的连锁店所在 ...