网络爬虫(spider)
文章平均质量分 70
woshizn
这个作者很懒,什么都没留下…
展开
-
如何构造一个C#语言的爬虫程序
C#特别适合于构造蜘蛛程序,这是因为它已经内置了HTTP访问和多线程的能力,而这两种能力对于蜘蛛程序来说都是非常关键的。下面是构造一个蜘蛛程序要解决的关键问题: ⑴ HTML分析:需要某种HTML解析器来分析蜘蛛程序遇到的每一个页面。 ⑵ 页面处理:需要处理每一个下载得到的页面。下载得到的内容可能要保存到磁盘,或者进一步分析处理。 ⑶ 多线程:只有拥有多线程能力,蜘蛛程序转载 2008-11-08 11:54:00 · 639 阅读 · 0 评论 -
基于网络爬虫的有效URL缓存(英文原文)
Efficient URL Caching for World Wide Web CrawlingAndrei Z. BroderIBM TJ Watson Research Center19 Skyline DrHawthorne, NY 10532abroder@us.ibm.comMarc NajorkMicrosoft Research1065 La Ave...原创 2009-11-28 23:43:37 · 305 阅读 · 0 评论 -
支持web信息分类的高性能蜘蛛程序 爬虫程序 spider
转自:小型微型计算机系统 文/高克宁 柴桥子 张斌 马安香 蜘蛛程序研究现状 对任何需要抽取大规模数据信息的网络蜘蛛,都应考虑如下几个方面的问题 1.灵活性:任何运行于复杂环境的网络蜘蛛,都需要对平台软硬件资源,网络性能等具有很好的自适应能力,以及对于不同性能需求有相应的调节能力。 2.健壮性:蜘蛛程序需要...原创 2009-11-28 23:37:50 · 207 阅读 · 0 评论 -
抢先式多线程网络爬虫spider在智能搜索引擎中的实现
转自:《计算机工程》 文/ 董瑞洪,张秋余,唐静兵,张涛线程 线程是描述进程内的执行,正是线程负责执行包含在进程的地址空间中的代码。单个进程可能包含几个线程,它们可以同时执行进程的地址空间中的代码。每个线程有自己的一组cpu寄存器和堆。线程可以看成“一段代码的执行”也就是一系列有jvm执行的二进制指令。这里面没有对象甚至没有方法的概念。线程是有序的指令,而不是方法。...原创 2009-11-28 23:36:47 · 155 阅读 · 0 评论 -
网络爬虫 (spider) 中 LRU算法的设计与实现
转自:《程序员》 文/ 洪伟铭cache的所有位置都用双向链表链接起来,当一个位置被命中后,就将通过调整链表的指向将该位置调整到链表的头位置,新加入的内容直接放在链表的头上。这样,在进行过多次查找操作后,最近被命中过的内容就向链表的头移动,而没有被命中的内容就向链表的后面移动。当需要替换时,链表最后的位置就是最近最少被命中的位置,我们只需要将新的内容放在链表前面,淘汰链表最后的位置就是想了...原创 2009-11-28 23:35:20 · 157 阅读 · 0 评论 -
布隆过滤器 布隆算法 BloomFilter
[code="java"]package com.spider;import java.util.BitSet;public class BloomFilter {private int defaultSize = 2原创 2009-11-28 23:33:47 · 124 阅读 · 0 评论 -
Java 多线程 爬虫程序(spider)设计与实现
当spider程序访问到一个网页,必须进行以下几项基本处理:抽取网页中包含的文本;抽取网页中包含的URL,并将其区分为网页中包含的文本;抽取网页中包含的URL,并将其区分为网站内URL或网站外URL。2.2各主要功能 模块(类)设计2.2.1 spider类 该类为主类,继承自线程类。它本事并不做获取网页的具体工作,而是协调其他各类共同完成任务。其主要类成员及方法如下...原创 2009-11-28 23:29:42 · 229 阅读 · 0 评论 -
网络爬虫 (spider) URL消重设计 URL去重设计
在爬虫启动工作的过程中,我们不希望同一个网页被多次下载,因为重复下载不仅会浪费CPU机时,还会为搜索引擎系统增加负荷。而想要控制这种重复性下载问题,就要考虑下载所依据的超链接,只要能够控制待下载的URL不重复,基本可以解决同一个网页重复下载的问题。非常容易想到,在搜索引擎系统中建立一个全局的专门用来检测,是否某一个URL对应的网页文件曾经被下载过的URL存储库,这就是方案。接着要考...原创 2009-11-28 23:25:40 · 512 阅读 · 0 评论 -
基于网络爬虫的有效URL缓存(中文译文)
翻译了很久,其中省略了一些算法细节,如果感兴趣可以看英文原文。转载请注明出处。概要: 要在网络上爬行非常简单:基本的算法是:(a)取得一个网页(b)解析它提取所有的链接URLs(c)对于所有没有见过的URLs重复执行(a)-(c)。但是,网络的大小(估计有超过40亿的网页)和他们变化的频率(估计每周有7%的变化)使这个计划由一个微不足道的设计习题变成一个非翻译 2009-12-02 14:31:00 · 2003 阅读 · 0 评论 -
支持web信息分类的高性能蜘蛛程序 爬虫程序 spider
转自:小型微型计算机系统 文/高克宁 柴桥子 张斌 马安香 蜘蛛程序研究现状 对任何需要抽取大规模数据信息的网络蜘蛛,都应考虑如下几个方面的问题 1.灵活性:任何运行于复杂环境的网络蜘蛛,都需要对平台软硬件资源,网络性能等具有很好的自适应能力,以及对于不同性能需求有相应的调节能力。 2.健壮性:蜘蛛程序需要转载 2009-12-02 14:28:00 · 1693 阅读 · 1 评论 -
网络爬虫 (spider)中 LRU算法的设计与实现
转自:《程序员》 文/ 洪伟铭cache的所有位置都用双向链表链接起来,当一个位置被命中后,就将通过调整链表的指向将该位置调整到链表的头位置,新加入的内容直接放在链表的头上。这样,在进行过多次查找操作后,最近被命中过的内容就向链表的头移动,而没有被命中的内容就向链表的后面移动。当需要替换时,链表最后的位置就是最近最少被命中的位置,我们只需要将新的内容放在链表前面,淘汰链表最后的位置就是想了转载 2009-12-02 14:23:00 · 1056 阅读 · 0 评论 -
布隆过滤器 布隆算法 BloomFilter
package com.spider;import java.util.BitSet;public class BloomFilter {private int defaultSize = 2 << 24;private int basic = defaultSize - 1;private BitSet bits;public BloomFilter() { bi转载 2009-12-02 14:22:00 · 992 阅读 · 0 评论 -
Java 多线程 爬虫程序(spider)设计与实现
当spider程序访问到一个网页,必须进行以下几项基本处理:抽取网页中包含的文本;抽取网页中包含的URL,并将其区分为网页中包含的文本;抽取网页中包含的URL,并将其区分为网站内URL或网站外URL。2.2各主要功能 模块(类)设计2.2.1 spider类 该类为主类,继承自线程类。它本事并不做获取网页的具体工作,而是协调其他各类共同完成任务。其主要类成转载 2009-12-02 14:20:00 · 1813 阅读 · 0 评论 -
基于网络爬虫的有效URL缓存(英文原文)
Efficient URL Caching for World Wide Web CrawlingAndrei Z. BroderIBM TJ Watson Research Center19 Skyline DrHawthorne, NY 10532abroder@us.ibm.comMarc NajorkMicrosoft Research1065 La Ave转载 2009-12-02 14:29:00 · 2445 阅读 · 0 评论 -
抢先式多线程网络爬虫spider在智能搜索引擎中的实现
转自:《计算机工程》 文/ 董瑞洪,张秋余,唐静兵,张涛线程 线程是描述进程内的执行,正是线程负责执行包含在进程的地址空间中的代码。单个进程可能包含几个线程,它们可以同时执行进程的地址空间中的代码。每个线程有自己的一组cpu寄存器和堆。线程可以看成“一段代码的执行”也就是一系列有jvm执行的二进制指令。这里面没有对象甚至没有方法的概念。线程是有序的指令,而不是方法。转载 2009-12-02 14:27:00 · 1253 阅读 · 0 评论 -
网络爬虫 (spider) URL消重设计 URL去重设计
在爬虫启动工作的过程中,我们不希望同一个网页被多次下载,因为重复下载不仅会浪费CPU机时,还会为搜索引擎系统增加负荷。而想要控制这种重复性下载问题,就要考虑下载所依据的超链接,只要能够控制待下载的URL不重复,基本可以解决同一个网页重复下载的问题。非常容易想到,在搜索引擎系统中建立一个全局的专门用来检测,是否某一个URL对应的网页文件曾经被下载过的URL存储库,这就是方案。接着要考转载 2009-12-02 14:17:00 · 1522 阅读 · 0 评论 -
基于网络爬虫的有效URL缓存(中文译文)
翻译了很久,其中省略了一些算法细节,如果感兴趣可以看英文原文。转载请注明出处。[b]概要:[/b] 要在网络上爬行非常简单:基本的算法是:(a)取得一个网页(b)解析它提取所有的链接URLs(c)对于所有没有见过的URLs重复执行(a)-(c)。但是,网络的大小(估计有超过40亿的网页)和他们变化的频率(估计每周有7%的变化)使这个计划由一个微不足道的设计习题变成一个非常严峻...2009-11-28 23:45:03 · 203 阅读 · 0 评论