对爬虫下一步的打算
2010-03-12 16:56
169 查看
在临时解决好robots文件的bug后,发现爬虫在爬行数小时后依然会出错,且该错误原因不明,从定位的出错代码无法看出任何错误相关信息,初步判断该bug应该是与并行化有关。
对于稳定爬虫拟采取以下三个方式:
目前的爬虫是基于NCrawler的dotnet3.5版,利用vs2010的并行化支持,对其并行化之后实现的。该方法实现了对不同网站的并行爬行,大大提高了爬虫的效率,可是原版本在并行化后,可能导致出现bug,估计上述无法确定的错误就于此有关。
NCrawler还提供了dotnet4.0版,已经是并行化的版本了,但是其本身只对同一个网站并行爬行。此种方法对于爬虫的效率提高能力有限,因对同一网站不间断的大量爬行容易变成对该网站的攻击,导致其不能访问,所以爬行之后必须有一个合理的时间间隔,这将导致该版本效率提高有限。基于此版本修改,使其可以对不同网站执行并行处理,以提高其效率。目前的问题是工作量大小未知(应该不太大),且修改成功后亦不能保证就会是一个稳定版本。
因为NCrawler是一个活跃的正在开发中的开源爬虫,其稳定性和效率还有待考验。考虑于此同时可以学习arachnode.net,该爬虫是目前dotnet平台最成熟的一个开源爬虫,且已经集成了lucene.net的分词功能,已经是一个比较完整的搜索引擎。基于该爬虫的修改应该可以保证效率和稳定性,只是arachnode.net的15万行代码相对于NCrawler的2万行代码会很难消化……
对于稳定爬虫拟采取以下三个方式:
目前的爬虫是基于NCrawler的dotnet3.5版,利用vs2010的并行化支持,对其并行化之后实现的。该方法实现了对不同网站的并行爬行,大大提高了爬虫的效率,可是原版本在并行化后,可能导致出现bug,估计上述无法确定的错误就于此有关。
NCrawler还提供了dotnet4.0版,已经是并行化的版本了,但是其本身只对同一个网站并行爬行。此种方法对于爬虫的效率提高能力有限,因对同一网站不间断的大量爬行容易变成对该网站的攻击,导致其不能访问,所以爬行之后必须有一个合理的时间间隔,这将导致该版本效率提高有限。基于此版本修改,使其可以对不同网站执行并行处理,以提高其效率。目前的问题是工作量大小未知(应该不太大),且修改成功后亦不能保证就会是一个稳定版本。
因为NCrawler是一个活跃的正在开发中的开源爬虫,其稳定性和效率还有待考验。考虑于此同时可以学习arachnode.net,该爬虫是目前dotnet平台最成熟的一个开源爬虫,且已经集成了lucene.net的分词功能,已经是一个比较完整的搜索引擎。基于该爬虫的修改应该可以保证效率和稳定性,只是arachnode.net的15万行代码相对于NCrawler的2万行代码会很难消化……
相关文章推荐
- 对爬虫下一步的打算
- 创新实训5.18 导入数据库题目,下一步爬虫获取Status构思
- 下一步的学习打算
- 谷歌重返中国,立即拿下北京、深圳,下一步打算进军杭州?
- 下一步打算
- 下一步打算
- 爬虫的困惑:下一步走向何处
- 打算辞职了, 越来越没意思
- python实现一个简单的爬虫
- urllib模块爬虫在Python2在Python3中的使用
- R网络爬虫之表格下载
- 【Java Utility】Jsoup网页爬虫工具--设置Element的HTML内容【十二】
- 爬虫停止代码
- GO语言的进阶之路-爬虫进阶之路
- iOS程序员如何使用Python写网路爬虫
- Python爬虫002浏览器的模拟Header属性
- Python爬虫实战三之计算大学本学期绩点
- python3 [爬虫入门实战]scrapy爬取盘多多五百万数据并存mongoDB
- Python爬虫入门八之Beautiful Soup的用法