菜单
  

        过滤完后的URLs,再判断它为站内URL或者为站外URL。一般情况下同一网站内的URL的host名因该是一致的。所以我们可以通过判断URLs中是否包含站点host就可以了,如果为站内URL则加入到缓存队列。
    4.4. URL队列管理
        URL消重处理,我是用LRU算法加上MD5压缩算法来实现的,因为URLs的数量非常巨大,为了节省内存空间。我先通过MD5压缩来得到每个URL对于的一个hash码。这个hash码的长度相对较小,可以节省内存开销。而且产生碰撞的几率非常小,可以忽略不计。
        然后这个URL消重队列的文护是用LRULinkedHashMap来实现的,这个Map它总是淘汰重复次数最少的URL。这样就算URL数过大,也可以尽量避免重复下载URL。
        有了这个map以后,我就会用URL到里面去碰撞。因为有些网站的URL写法不固定。也许是同一个URL,但是有些在最后一位接续"/"符号,而有些则没有接续。这样当进行URL去重处理时,会认为它们不是一个URL。所以我们必须先除去后面的"/"符号,再进行URL去重判断。
    5.系统测试
    5.1.测试定义
        软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码的最终复审,是软件质量保证的关键步骤测试:为了发现软件中的错误而运行软件的过程。
    5.2.测试方法及结果
        该系统使用以黑盒测试方法进行测试:
        黑盒测试:它是把程序看成一个黑盒子,完全不考虑程序内部结构和处理过程。黑盒测试是在程序接口进行测试,它只是检查程序功能是否按照规格说明书的规定正常使用。黑盒测试又称功能测试。
    测试用例:
    (1)    运行测试:打开程序看是否能正常运行
    (2)    功能测试:
    a.    在url 文本框中输入要抓取主题的网址,点击run 运行。
    b.    查看Log 是否生成
    c.    设置系统参数结果是否有变化
        测试结果:系统应用功能正常,各程序模块正常。
    结 论
    从课题着手到现在论文完成,经历了3个月的时间,在这个3个月里,我不断学习探索,从对网络爬虫一无所知,到成功编写出网络爬虫程序。对网络爬虫中比较主流的技术都有了更深的理解。网络爬虫是一个自动搜集互联网信息的工具,实现了网络爬虫,就可以在互联网这样一个巨大的信息海洋里遨游。
    这篇论文实现了一个基于广度优先策略的多线程爬虫程序,可以搜集站内URLs,但是在功能细节上还有很多不足,比如系统不够优化,功能不够强大。对于网络爬虫这个庞大的知识体系来说,这篇论文实现的功能只能算是一些皮毛,要深刻地理解爬虫程序,在爬虫程序设计中有所作为,还需要长达几年,或者更长时间的积累,所以在以后的时间,我将继续研究网络爬虫技术,分析设计一些比较复杂的爬行策略,优化爬虫程序,希望在这一课题上达到另一个高度。
  1. 上一篇:数据挖掘中的隐私保护技术研究
  2. 下一篇:JSP在线选课系统设计+需求分析+可行性分析
  1. 面向电商评论的数据挖掘技术与系统

  2. 随机物流车辆调度问题的仿真与决策

  3. 基于RS和GIS的淮安市主城区空间扩展动态监测

  4. Morphin算法面向非结构化道...

  5. 基于pythondjango学者个人主页系统设计

  6. 面向BPEL的服务组合流程定义工具

  7. 云节点协同工作若干问题的研究

  8. 酸性水汽提装置总汽提塔设计+CAD图纸

  9. java+mysql车辆管理系统的设计+源代码

  10. 中考体育项目与体育教学合理结合的研究

  11. 十二层带中心支撑钢结构...

  12. 河岸冲刷和泥沙淤积的监测国内外研究现状

  13. 乳业同业并购式全产业链...

  14. 当代大学生慈善意识研究+文献综述

  15. 大众媒体对公共政策制定的影响

  16. 杂拟谷盗体内共生菌沃尔...

  17. 电站锅炉暖风器设计任务书

  

About

751论文网手机版...

主页:http://www.751com.cn

关闭返回