掠夺者—自己写新闻采集器(1)
来源:互联网 发布:喵星人软件 编辑:程序博客网 时间:2024/04/28 19:00
很多免费的采集器都会采到不少多余的内容,比如被采网站的logo、文字注释、广告等,新闻被采集下来还要人工编辑,很是麻烦。于是空闲至于尝试设计了一个无需人工干预和二次编辑的采集器,直接将采下来的新闻过滤掉多余内容,并发布到网站上。
这个采集器要实现的功能有:
1 每隔两小时自动从网上采集最新的、不重复的、非独家发布的、不带敏感关键字眼的各类新闻各20条;
2 实现对新闻中图片的下载,对各种新闻链接、广告(图片或视频)、相关阅读等无用信息的过滤;
3 将采到的新闻直接发布到网站,免去一切人工操作!
4 每隔一小时采集一次天气预报,并发布到网站,同时在早上7点半和下午2点半往本组成员手机发送天气预报(嘿嘿,相当于免费定了一个天气预报业务)。
5 每隔一小时对主页进行一次静态化,加快访问速度。
采集器选用的开发语言为JAVA,利用开源项目htmlparser实现网页的抓取,开发环境为my eclipse 6.0,后来改为eclipse 3.4,执行方式为打成jar包,在命令行下执行。工程的结构如下图所示(公司名已被遮盖):
我来介绍一下各个类的功能
TimeRobot 掠夺者(我给采集器起的名字)的入口,定义了main函数
Article 一个JavaBean,定义了文章的标题、正文等
Common 公共函数类,定义了被多个类调用的各种函数,如下载图片、格式化时间、过滤等
SqlDao 封装了所需的数据库方法
AritcleDao 没用的类(本来想用iBatis框架的)
GetLocalNews 采集本地新闻
GetNewGames 不理这个东西,呵呵,空类,截图时忘记干掉了
GetWapNews 采集WAP新闻
GetWeatherForecast 采集天气预报
GetWebNews 采集WEB新闻
NewsGeter 采集新闻,掠夺者仅认识NewsGeter,这个类封装了各种新闻的采集
StaticIndex 静态化主页
下面介绍一下各类之间的关系
掠夺者的入口为TimeRobot(时间机器人),TimeRobot中调用了三个定时任务,分别是定时新闻NewsGeter、定时天气预报GetWeatherForecast和定时静态化主页StaticIndex,如下图所示:
- 掠夺者—自己写新闻采集器(1)
- 掠夺者—自己写新闻采集器(2)
- 掠夺者—自己写新闻采集器(3)
- snoopy采集(自己写的)
- 自己写的采集
- 新闻采集器
- 自己用C#写一个采集器、蜘蛛(转)
- 自己用C#写一个采集器、蜘蛛
- 新闻采集
- 自己写网页爬虫——网页分类抓取/采集并导入数据库
- 新闻采集应用程序
- 新闻自动采集系统
- nodejs 采集新闻数据
- nodejs 采集新闻数据
- java 采集新闻数据
- 工作时候自己写的一个用户采集python
- 自己写的采集lintcode.com上面的试题
- 用delphi制作新闻采集程序(一)
- [J2SE]Java中3DES加密解密调用示例
- 编码传说
- java的简单加密/解密方法
- flash 动态文本的中文粗体无法显示解决办法
- oracle 备份技术详解(二)——脱机备份
- 掠夺者—自己写新闻采集器(1)
- 以往开发记录
- 打印:document.execCommand('print','true','true')的使用?
- VC++实现文件夹时间属性的获取与更改
- 一些常用的webservice,希望大家回复跟多的。。。
- 以往记录
- 给元素注册事件时,事件函数中不能使用全局变量
- c#有关 GDI+ 图形编程方面的相关资料
- 掠夺者—自己写新闻采集器(2)