问题: what's the web process when 爬虫。这个爬虫是用HTTP Request来发送的。中间有一个三次握手的过程。
架构:
先爬到news, 然后让News crawler爬里面的信息。
一般我以前自己玩的爬虫都是单网站爬,单电脑。
system design大一点的问题就是:当去到一个网站后,把这个网站上各种广告,新闻的链接提取出来,放到要访问的队列中。
这里可以用一个regular expression:
但是我们爬的网站将会无限变多,一个机器肯定处理不来。即便多线程也不行。所以用好多台机器来爬,他们共享同一个Table, 里面是要抓的链接
不是什么链接都去抓,我们会有一个优先级别,比如新闻网页可以优先。然后对于不太经常update的网站,我们会设置一下下次的抓取时间。它如果老不更新,我们抓取时间间隔会越来越久。