我想学习,
- crawler4j是如何工作的?
- 它是否获取网页然后下载其内容并提取它?
- .db 和 .csv 文件及其结构怎么样?
一般来说,它遵循什么顺序?
拜托,我想要描述性内容
Thanks
爬虫通用流程
一个典型的多线程爬虫的流程如下:
我们有一个队列数据结构,称为frontier
。新发现的 URL(或起点,即所谓的种子)将添加到此数据结构中。此外,为每个 URL 分配一个唯一的 ID,以确定先前是否访问过给定 URL。
然后爬虫线程从frontier
并安排它们以供稍后处理。
-
实际处理开始:
- The
robots.txt
确定并解析给定 URL,以遵守排除标准并成为礼貌的网络爬虫(可配置)
- 接下来,线程将检查礼貌,即再次访问 URL 的同一主机之前等待的时间。
- 爬虫访问实际的 URL 并下载内容(这可以是字面上的所有内容)
- 如果我们有 HTML 内容,则会解析该内容并提取潜在的新 URL 并将其添加到边界(在
crawler4j
这可以通过控制shouldVisit(...)
).
重复整个过程,直到没有新的 URL 添加到frontier
.
通用(重点)爬虫架构
除了实施细节之外crawler4j
或多或少general(重点)爬虫架构(在单个服务器/PC上)如下所示:
免责声明:图片是我自己的作品。请参考这篇文章来尊重这一点。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)