互联网是由一个一个的超链接组成的,从一个网页的链接可以跳到另一个网页,在新的网页里,又有很多链接。理论上讲,从任何一个网页开始,不断点开链接、链接的网页的链接,就可以走遍整个互联网!这个过程是不是像蜘蛛沿着网一样爬?这也是“爬虫”名字的由来。
作为爬虫工程师,就是要写出一些能够沿着网爬的”蜘蛛“程序,保存下来获得的信息。一般来说,需要爬出来的信息都是结构化的,如果不是结构化的,那么也就没什么意义了(但百分之八十的数据是非结构化的)。爬虫的规模可达可小,小到可以爬取豆瓣的top 250电影,定时爬取一个星期的天气预报等。大到可以爬取整个互联网的网页(例如google)。
典型的爬虫工作步骤是这样的:
1 解析根网页(“mit.edu”),并从此页面获取所有链接。 要访问每个URL并解析HTML页面,使用JSoup,这是一个方便和简单的Java库,类似于python的soulsoap
2 使用从步骤1中检索的URL,并解析这些URL
3 在执行上述步骤时,我们需要跟踪之前处理过的页面,以便每个网页只处理一次。 这就是我们需要数据库的原因.