一:爬虫是什么
爬虫从一个URL出发,访问与它相关的URL,自动访问互联网并提取数据的程序
python爬虫的图解架构:
二:URL管理器
概念:管理待抓取的URL集合和已抓取的URL的集合
主要目的是防止重复抓取
URL管理器将URL集合可以放到3个地方:
1,python的内存中:存到set中。set()是python的一种数据结构呀,里面的元素不重复且没有顺序 适合小型公司
2,关系数据库中(MySql),主要原理:建立一个表,将URL永久存储
3,缓存数据库(redis)支持set 支持大型数据
网页下载器:
概念:将互联网上URL对应的网页下载到本地的工具。
网页下载有两种方法:
1,urllib是python提供的基础模块
2,requests是python的第三方包,更加强大
urllib的三种下载方法:
1,用urllib.request.urlopen(url)方法
返回一个请求:response
2,添加data,http header
3,添加特殊情境的处理器
1:网页需要登录时才能处理用到cookie:httpcookieProcessor
2:Https加密访问:HttpsHandler
后面两种目前没有写过例子
三:网页解析器
概念:从网页中提取有价值数据的工具
网页解析器从HTML网页中爬取有价值的数据或者URL的列表
网页解析器的分类:
1,正则表达式:适用于模糊匹配
2,html.parsel
3,beautifulSoup 第三方插件
beautifulSoup是结构化解析成DOM树的模型,用find_all ,find 搜素结点,搜索节点的名称,属性,文字