随笔分类 - 数据挖掘
摘要:在此回复牛妞的关于程序中分词器的问题,其实可以直接很简单的在词库中配置就好了,Lucene中分词的所有信息我们都可以从TokenStream流中获取.分词器的核心类Analyzer,TokenStream,Tokenizer,TokenFilter.AnalyzerLucene中的分词器有StandardAnalyzer,StopAnalyzer,SimpleAnalyzer,WhitespaceAnalyzer.TokenStream分词器做好处理之后得到的一个流,这个流中存储了分词的各种信息.可以通过TokenStream有效的获取到分词单元Tokenizer主要负责接收字符流Reader
阅读全文
摘要:htmlparser是一个纯的java写的html解析的库,它不依赖于其它的java库文件,主要用于改造或提取html。它能超高速解析html,而且不会出错。现在htmlparser最新版本为2.0。下载地址:http://sourceforge.net/projects/htmlparser/在线API:http://www.ostools.net/apidocs/apidoc?api=HTMLParserFilter就是对于结果进行过滤,取得需要的内容。HTMLParser在org.htmlparser.filters包之内一共定义了15个不同的FilterAndFilter、CssSel
阅读全文
摘要:安装包下载当前最新版本为:0.20.6http://www.elasticsearch.org/download/官方视频教程http://www.elasticsearch.org/videos/Window环境下载完解开有以下个包:bin是运行的脚本,config是设置文件,lib是放依赖的包。启动解压目录下的bin名称的文件夹,双击elasticsearch.bat文件,就可以启动elasticsearch,启动成功界面如下:启动成功后,会在解压目录下增加2个文件件,data用于数据存储,logs用于日志记录,可以自己创建plugins目录中用于放置自己的插件。此时可以在浏览器中输入:h
阅读全文
摘要:Lucene是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎.它提供了一个简单却强大的应用程式接口,能够做全文索引和搜寻。在Java开发环境里Lucene是一个成熟的免费开源工具。就其本身而言,Lucene是很受欢迎的免费Java资讯检索程式库。因公司需要,所以开始爬资料学习,希望得到更多大神的指点.然后把这块做好!当前版本为4.2,官方网站:http://lucene.apache.org/在全文索引工具中,都是由3部分组成1.索引部分2.分词部分3.搜索部分建立索引的步骤1.创建Directory2.创建IndexWriter3.创建Document对象4.为Do
阅读全文
摘要:使用Lucene检索文档关键字时,具体步骤如下:1.对文档处理2.为要处理的文件内容建立索引3.构建查询对象4.在索引中查找使用Lucene检索文档中的关键字实例文件预处理工具类FilePreHandleUtilpackage org.dennisit.study.lucene.prehandle;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileReader;import java.io.FileWriter;import java.io.IOE
阅读全文
摘要:多线程提升爬虫性能为了提升爬虫性能,需要采用多线程的爬虫技术。并且开源软件Heritrix已经采用了多线程的爬虫技术来提高性能。而且很多大型网站都采用多个服务器镜像的方式提供同样的网页内容。采用多线程并行抓取能同时获取同一个网站的多个服务器中的网页,这样能极大地减少抓取这类网站的时间。多线程是一种机制,它允许在程序中并发执行多个指令流,每个指令流都称为一个线程,彼此间互相独立。线程又称为轻量级进程,它和进程一样拥有独立的执行控制,由操作系统负责调度,区别在于线程没有独立的存储空间,而是和所属进程中的其他线程共享存储空间,这使得线程间的通信较进程简单。多个线程的执行是并发的,即在逻辑上是“同时”
阅读全文
摘要:设计爬虫架构一个设计良好的爬虫架构必须满足如下需求。(1)分布式:爬虫应该能够在多台机器上分布执行。(2)可伸缩性:爬虫结构应该能够通过增加额外的机器和带宽来提高抓取速度。(3)性能和有效性:爬虫系统必须有效地使用各种系统资源,例如,处理器、存储空间和网络带宽。(4)质量:鉴于互联网的发展速度,大部分网页都不可能及时出现在用户查询中,所以爬虫应该首先抓取有用的网页。(5)新鲜性:在许多应用中,爬虫应该持续运行而不是只遍历一次。(6)更新:因为网页会经常更新,例如论坛网站会经常有回帖。爬虫应该取得已经获取的页面的新的拷贝。例如一个搜索引擎爬虫要能够保证全文索引中包含每个索引页面的较新的状态。对于
阅读全文
摘要:网络爬中即网络蜘蛛,是通过网页的链接地址来寻找网页,说白点网络蜘蛛就是一个爬行程序,一个抓取网页的程序。网络蜘蛛,从网站某一个页面(通常是首页)开始,读取网页的内容,找到在网页中的其它链接地址,然后通过这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取完为止。如果把整个互联网当成一个网站,那么网络蜘蛛就可以用这个原理把互联网上所有的网页都抓取下来。原作者整理的爬中项目介绍,个人收集来作为自己的学习笔记与大家共享.RBSE是第一个发布的爬虫。它有两个基础程序。第一个程序“spider”抓取队列中的内容到一个关系数据库中第二个程序“mite”是一个修改后的WWW的A
阅读全文
摘要:无聊的元旦,用Java实现QQ空间备份器时分析了如何进行模块爬取实际地址中的需要信息的感悟,与图解步骤,写出来与大家共享,交流.随便点击一个用户进入空间,然后选择日志,进入日志列表比如我的空间日志列表的URL为:http://user.qzone.qq.com/799089378/infocenter#!app=2&via=QZ.HashRefresh&pos=catalog_list这个整体URL对每个用户是一致的,不同的用户换QQ号码即可,笔者换成的是好友的1325103287,接下来就针对好友的日志列表进行分析说明一下,笔者用来帮助分析的浏览器为GoogleChrome进
阅读全文