用WebCollector爬取整站图片,仅仅须要遍历整站页面。然后将URL为.jpg、gif的页面(文件)保存到本地就可以。

比如我们爬取一个美食站点,获取里面全部的图片:

import cn.edu.hfut.dmic.webcollector.crawler.BreadthCrawler;
import cn.edu.hfut.dmic.webcollector.model.Page;
import cn.edu.hfut.dmic.webcollector.util.FileUtils; import java.io.IOException;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.regex.Pattern; /**
* 用WebCollector爬虫爬取整站图片
*/
public class PicCrawler extends BreadthCrawler{ /*用一个整数,不断自增,来作为下载的图片的文件名称*/
AtomicInteger id=new AtomicInteger(0); @Override
public void visit(Page page) { /*不处理非jpg的网页/文件*/
if(!Pattern.matches(".*jpg$",page.getUrl())){
return;
}
/*将图片内容保存到文件,page.getContent()获取的是文件的byte数组*/
try {
FileUtils.writeFileWithParent("download/"+id.incrementAndGet()+".jpg",page.getContent());
System.out.println("download:"+page.getUrl());
} catch (IOException e) {
e.printStackTrace();
}
} public static void main(String[] args) throws Exception {
PicCrawler crawler=new PicCrawler();
crawler.addSeed("http://www.meishij.net/");
crawler.addRegex("http://.*meishij.net/.*");
crawler.setThreads(50);
crawler.start(10);
}
}

代码将站点图片保存到了project以下的download目录中:

WebCollector爬虫官网:https://github.com/CrawlScript/WebCollector

WebCollector文档:http://www.brieftools.info/document/webcollector/

技术讨论群:250108697

用WebCollector爬取站点的图片的更多相关文章

  1. python 爬虫入门----案例爬取上海租房图片

    前言 对于一个net开发这爬虫真真的以前没有写过.这段时间学习python爬虫,今天周末无聊写了一段代码爬取上海租房图片,其实很简短就是利用爬虫的第三方库Requests与BeautifulSoup. ...

  2. Python-王者荣耀自动刷金币+爬取英雄信息+图片

    前提:本文主要功能是 1.用python代刷王者荣耀金币 2.爬取英雄信息 3.爬取王者荣耀图片之类的. (全部免费附加源代码) 思路:第一个功能是在基于去年自动刷跳一跳python代码上面弄的,思路 ...

  3. 使用Python爬虫爬取网络美女图片

    代码地址如下:http://www.demodashi.com/demo/13500.html 准备工作 安装python3.6 略 安装requests库(用于请求静态页面) pip install ...

  4. 第一个nodejs爬虫:爬取豆瓣电影图片

    第一个nodejs爬虫:爬取豆瓣电影图片存入本地: 首先在命令行下 npm install request cheerio express -save; 代码: var http = require( ...

  5. 用WebCollector爬取新浪微博数据

    教程已转移:http://datahref.com/archives/28 WebCollector爬取新浪微博等完整演示样例project可加群250108697或345054141从群文件里下载. ...

  6. 用scrapy爬取搜狗Lofter图片

    用scrapy爬取搜狗Lofter图片 # -*- coding: utf-8 -*- import json import scrapy from scrapy.http import Reques ...

  7. scrapy爬虫爬取小姐姐图片(不羞涩)

    这个爬虫主要学习scrapy的item Pipeline 是时候搬出这张图了: 当我们要使用item Pipeline的时候,要现在settings里面取消这几行的注释 我们可以自定义Item Pip ...

  8. webcollector + selenium 爬取空间相册图片

    package cn.hb.util; import java.io.File; import java.io.FileNotFoundException; import java.io.FileWr ...

  9. Java爬虫实践--爬取CSDN网站图片为例

    实现的效果,自动在工程下创建Pictures文件夹,根据网站URL爬取图片,层层获取.在Pictures下以网站的层级URL命名文件夹,用来装该层URL下的图片.同时将文件名,路径,URL插入数据库, ...

随机推荐

  1. 理解 Android 本地数据存储 API

    利用首选项.SQLite 和内部及外部内存 API 对于需要跨应用程序执行期间或生命期而维护重要信息的应用程序来说,能够在移动设备上本地存储数据是一种非常关键的功能.作为一名开发人员,您经常需要存储诸 ...

  2. SQLServer数据类型与C#类型对照表

    这是我在开发多层体系结构时遇到的问题,由于VS.NET尚不支持各种数据类型的空值即null, 放入实体类中在各个层之间作为参数传递,所以经查询参考SQL Server 2000的联机丛书和.NET的M ...

  3. android ExpandableListActivity的使用

    package com.example.keKuoZhanLieBiao; import android.app.ExpandableListActivity; import android.os.B ...

  4. [jobdu]第一个只出现一次的字符

    刚开始还在想双指针,完全没必要.然后最土的可以扫两遍O(n),用一个数组记录出现次数.然后想到如果数组里记录出现的位置,可以只扫一遍O(n),第二遍扫字符集就行了. #include <iost ...

  5. 155. Min Stack

    题目: Design a stack that supports push, pop, top, and retrieving the minimum element in constant time ...

  6. linux 匹配查询列表中包含某一特殊字符的所有行中的某一列

    命令: ll | grep sh | awk '{print $9}' 解析: 其中,匹配列的命令为awk '{print $n}',$n为匹配的第几列.

  7. Item Import: What Does "Sync" Items Do? (Doc ID 417887.1)

    In this Document Goal Solution APPLIES TO: Oracle Item Master - Version 11.5.10.0 to 11.5.10.0 [Rele ...

  8. 转:理解 Linux 的硬链接与软链接

    Linux 的文件与目录 现代操作系统为解决信息能独立于进程之外被长期存储引入了文件,文件作为进程 创建信息的逻辑单元可被多个进程并发使用.在 UNIX 系统中,操作系统为磁盘上的文本与图像.鼠标与键 ...

  9. 结构体 fseg_inode_t;

    typedef byte fseg_inode_t;

  10. 结构体dict_index_t;

    /** InnoDB B-tree index */ typedef struct dict_index_struct dict_index_t; /** Data structure for an ...