工作流程
网络爬虫是捜索引擎(Baidu、Google、Yahoo)抓取系统的重要组成部分。主要目的是将互联网上的网页下载到本地,形成一个互联网内容的镜像备份。
网络爬虫的基本工作流程如下:
-
首先选取一部分精心挑选的种子URL;
-
将这些URL放入待抓取URL队列;
-
从待抓取URL队列中取出待抓取在URL,解析DNS,并且得到主机的ip,并将URL对应的网页下载下来,存储进已下载网页库中。此外,将这些URL放进已抓取URL队列。
-
分析已抓取URL队列中的URL,分析其中的其他URL,并且将URL放入待抓取URL队列,从而进入下一个循环。
1 import requests #用来爬取网页 2 from bs4 import BeautifulSoup #用来解析网页 3 #我们的种子 4 seds = ["http://www.lagou.com/"] 5 sum = 0 6 #我们设定终止条件为:爬取到10000个页面时,就不玩了 7 8 while sum < 10000 : 9 if sum < len(seds): 10 r = requests.get(seds[sum]) 11 sum = sum + 1 12 #提取结构化数据;做存储操作 13 do_save_action(r) 14 soup = BeautifulSoup(r.content) 15 urls = soup.find_all("href",.....) //解析网页所有的链接 16 for url in urls: 17 seds.append(url) 18 else: 19 break