11月 022007
 

   最近因为工作需要,在网上寻找数据采集软件,刚开始下载了好几种采集软件,发现不是功能有限制,就是功能不足满足不了我的需要(因为我想要采集的网站结构比较复杂,具体是什么网站保密~),偶然发现了一个以前没见过的TOPFISHER数据采集软件,看到网站的介绍,说是能够精确的采集到数字及日期类型的数据,也没有什么功能限制,而这正是我想要的啊,于是就下载下来试试看。

   下载下来一看郁闷了一下,TOPFISHER这个软件是用编写脚本代码的方式来分析网站架构的,不像其它的软件都是配置一大堆对话框的那种。不管怎么样,先找一些例子程序运行一下试试看吧,我试运行了三个例子:第一个是采集百度搜索结果数据,结果真的是可以采集,这个虽然比较强,但用处不大。第二个是采集和下载一个手机待机图片的网站数据,这个确实很不错,不但把图片都下载到了一个指定的目录中,而且还把图片相关的数据直接放到了一个MDB文件中。第三个是下接采集某站的手机号码归属地的数据,这个相信对多数站长都是非常有用的(包括我自己),这个也不错,也是直接把结果放到了一个MDB文件中,而且目标网站是以POST方式来传递参数的,TOPFISHER也可以轻松拿下。

   看来这个软件的确有他的独到之处,还好我也有一定的编程能力,就决定下些功夫学习一下这个软件,回头先看了一下之前试过的那三个例子的脚本代码,都很短啊,也就10几行的代码,大致看了一下代码内容,跟一般的编程语言都差不多,像我这种有编程底子的人学习起来应该比较容易。费了差不多一天的时间,终于把 TOPFISHER搞通了,而且也把我想要的数据给完美的采集下来了,哈哈。学习的过程中发现TOPFIHSER果然很强大,提供了很多的字符串操作函数,可以把采集的数据过滤的很干净,灵活的代码编写方式的确是可以适应绝大多数网站,除非这个网站页面没有规律,只要有规律就可以用TOPFISHER代码解析出来。

   之后的几天,又试着采集几个别的网站,还试了一下定时采集,和数据直接入MSSQL数据库的功能,都非常不错,只是配置MSSQL存储过程那里有点麻烦。总结了一下,TOPFISHER有以下优缺点:

   优点:
   1.灵活的脚本代码方式,可以使得软件通吃绝大多数的网站。
   2.用一种类似数组的方式来直接访问网页中的标签属性,数据定位很准确。
   3.TOPFISHER脚本执行程序运行很稳定,我配置了一个定时采集的任务,放在服务器连续运行一周多到现在,还非常正常,而且平时只占用几百K的内存。真正的实现了有一个机器人自已在后台录入数据,而我几乎不用去管它,呵呵。
   4.提供了调整数据采集频率的函数,这样就可以避免访问过于频繁而被封掉IP了,嘿。

   缺点:
   1.脚本代码的方式,如果是不会编程的人,学习起来肯定很困难。还好有丰富的文字和视频教程,至少会编程的人学习起来还是比较快的。
   2.单线程的执行任,就算是你同时把两个脚本放到任务队列中,它也是一个一个执行的。
   3.下载文件的功能没有支持多线程下载和断点续传。这样下载比较大的文件不太方便。

   TOPFISHER与其它同类软件比较,是一款上手难,但学会之后效率很高的采集软件,以我现在的水平,只要目标网站不太复杂,一个小时编出一个完整的采集脚本不成问题。另一点就是TOPFISHER在采集网站数字/日期型数据的方面很强大,再加上它运行稳定的脚本解释器,搭建一个属于自己的垂直搜索引擎网站的确是不成问题,偶下一步就打算找个行业来搭个行业搜索引擎来玩玩,嘿嘿。

 回复

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>