JAVA 爬虫工具有挺多的,但是Gecco是一个挺轻量方便的工具。

先上项目结构图。

这是一个 JAVASE的 MAVEN 项目,要添加包依赖,其他就四个文件。log4j.properties 加上三个java类。

1、先配置log4j.properties

log4j.rootLogger =error,stdout,D,E

log4j.appender.stdout=org.apache.log4j.ConsoleAppender

log4j.appender.stdout.Target=System.out

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.appender.stdout.layout.ConversionPattern= [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n

log4j.appender.D=org.apache.log4j.DailyRollingFileAppender

log4j.appender.D.File=vincent_player_debug.log

log4j.appender.D.Append= truelog4j.appender.D.Threshold=DEBUG

log4j.appender.D.layout=org.apache.log4j.PatternLayout

log4j.appender.D.layout.ConversionPattern= %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n

log4j.appender.E=org.apache.log4j.DailyRollingFileAppender

log4j.appender.E.File=vincent_player_error.log

log4j.appender.E.Append= truelog4j.appender.E.Threshold=ERROR

log4j.appender.E.layout=org.apache.log4j.PatternLayout

log4j.appender.E.layout.ConversionPattern= %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n

2、接下来着手写Blog.java,里面都有注释  不解释

packagecom.cwj.gecco.pojo;importcom.geccocrawler.gecco.annotation.Gecco;importcom.geccocrawler.gecco.annotation.HtmlField;importcom.geccocrawler.gecco.annotation.Request;importcom.geccocrawler.gecco.request.HttpRequest;importcom.geccocrawler.gecco.spider.SpiderBean;/***@authorcwj

* 2017年8月6日

* Blog实体类,运行主函数从这里开始解析

* matchUrl:要抓包的目标地址

* pipelines:跳转到下个pipelines*/@Gecco(matchUrl="http://www.cnblogs.com/boychen/p/7226831.html",pipelines="blogPipelines")public class Blog implementsSpiderBean{/*** 向指定URL发送GET方法的请求*/@RequestprivateHttpRequest request;/*** 抓去这个路径下所有的内容*/@HtmlField(cssPath= "body div#cnblogs_post_body")privateString content;publicHttpRequest getRequest() {returnrequest;

}public voidsetRequest(HttpRequest request) {this.request =request;

}publicString getContent() {returncontent;

}public voidsetContent(String content) {this.content =content;

}

}

3、BlogPipelines.java

packagecom.cwj.gecco.pipelines;importcom.cwj.gecco.pojo.Blog;importcom.geccocrawler.gecco.annotation.PipelineName;importcom.geccocrawler.gecco.pipeline.Pipeline;/***@authorcwj

* 2017年8月6日

* 运行完Blog.java 根据@PipelineName 来这里*/@PipelineName(value="blogPipelines")public class BlogPipelines implements Pipeline{/*** 将抓取到的内容进行处理 这里是打印在控制台*/

public voidprocess(Blog blog) {

System.out.println(blog.getContent());

}

}

4、最后便是在main中调用

packagecom.cwj.gecco.main;importcom.geccocrawler.gecco.GeccoEngine;public classMain {public static voidmain(String[] args) {

GeccoEngine.create()//工程的包路径

.classpath("com.cwj.gecco")//开始抓取的页面地址

.start("http://www.cnblogs.com/boychen/p/7226831.html")//开启几个爬虫线程

.thread(10)//单个爬虫每次抓取完一个请求后的间隔时间

.interval(5)//使用pc端userAgent

.mobile(false)//开始运行

.run();

}

}

5、抓取到内容,日志文件被我删除  有警告

附上源码地址  https://github.com/BeautifulMeet/Gecco

java爬去指定网页的内容_JAVA使用Gecco爬虫 抓取网页内容(示例代码)相关推荐

  1. python网页数据存入数据库_python网络爬虫抓取动态网页并将数据存入数据库MySQL...

    简述 以下的代码是使用python实现的网络爬虫,抓取动态网页 http://hb.qq.com/baoliao/ .此网页中的最新.精华下面的内容是由JavaScript动态生成的.审查网页元素与网 ...

  2. java抓取网页代码_java 抓取网页内容实现代码

    复制代码 代码如下: package test; import java.io.BufferedReader; import java.io.IOException; import java.io.I ...

  3. java 输出字符集合里的字_Java基础 -- 字符串(格式化输出、正则表达式)(示例代码)...

    一 字符串 1.不可变String String对象是不可变的,查看JDK文档你就会发现,String类中每一个看起来会修改String值的方法,实际上都是创建一个全新的String对象,以包含修改后 ...

  4. java利用htmlparser得到网页html内容

    java利用htmlparser得到网页html内容,利用org.htmlparser.Parser包我们可以很轻松取到任何页面的源代码,方法如下: /*** 返回网页内容* * @param pat ...

  5. requests.get()爬去中文网页乱码解决方法

    requests.get()爬去中文网页乱码解决方法 当我们使用requests.get()爬取百度首页时会发现,返回的html代码中的中文发生乱码. import requestsheaders = ...

  6. java爬虫抓取网页数据论坛_Java爬虫抓取网页

    Java爬虫抓取网页原作者:hebedich  原文链接 下面直接贴代码: import java.io.BufferedReader; import java.io.InputStreamReade ...

  7. java socket抓取资源_Java 通过 Socket 的形式抓取网页内容

    package com.hmw.net; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IO ...

  8. Java爬虫抓取网页

    Java爬虫抓取网页 原作者:hebedich  原文链接 下面直接贴代码: import java.io.BufferedReader; import java.io.InputStreamRead ...

  9. java抓取页面表格_用java实现爬虫抓取网页中的表格数据功能源码

    [实例简介] 使用java代码基于MyEclipse开发环境实现爬虫抓取网页中的表格数据,将抓取到的数据在控制台打印出来,需要后续处理的话可以在打印的地方对数据进行操作.包解压后导入MyEclipse ...

最新文章

  1. 熟悉scala命令,scala语言运行超级素数和猴子大王
  2. C++ ODB 框架(未实践使用)
  3. 怎么查看linux是不是as7u4,Linux下搭建Android开发环境
  4. clipboard_monitor_in_win7
  5. 学习动态性能表(20)--v$waitstat
  6. PTA 1002 Business (35分)
  7. js有默认参数的函数加参数_函数参数:默认,关键字和任意
  8. 信息学奥赛一本通C++语言——1110:查找特定的值
  9. STM32工作笔记0062---定时器中断实验
  10. [学习笔记]拉格朗日中值定理
  11. 安装mysql输入_安装mysql
  12. 数据库:数据库设计与数据建模及建模工具(PowerDesigner)
  13. 禁用电子邮件服务器,启用或禁用对邮箱中的邮箱的 POP3 或 IMAP4 Exchange Server
  14. ORAN专题系列-19:5G O-RAN FrontHaul前传接口M Plane互操作性测试IOT规范
  15. 基于php047园林植物检索系统网站
  16. 【微信小程序】获取用户手机号的实现
  17. 数据库:关系模型基本介绍
  18. ElasticSearch 使用教程之_score(评分)介绍
  19. UCOS-III笔记
  20. 机器学习基础概念——过拟合和欠拟合

热门文章

  1. WordPress编辑器支持Word文档一键粘贴
  2. 2022年初级会计职称考试经济法基础练习题及答案
  3. 2021年初级会计职称《初级会计实务》考试真题和答案
  4. showdialog wpf 如何关闭_使用ShowDialog()阻止所有其他Windows的WPF模态窗口
  5. Itext实现pdf文件Encryption
  6. 【场景图生成】Unbiased Scene Graph Generation from Biased Training
  7. ZOJ-4107 Singing Everywhere 2019浙江省省赛
  8. 电视和计算机屏幕有哪三中颜色组成,合成彩色电视机和计算机屏幕上艳丽画面的色光是:[]A.红、绿、蓝...
  9. 40k~65k, 区块链架构师技能包一览: 多语言、多平台、多算法...别慌, 先投简历再说...
  10. 践行公益担当 | 关爱留守儿童,暖到“心理”