爬虫入门&分类

网站的三大特性:

1. 每一个资源都有一个url(统一资源定位符),是唯一的

2. 每一个网页都是使用HTML文本展示数据的

3. 通过http或https(超文本传输协议),去获取和传递HTML源码

如何实现一个爬虫

1. 找到目标url

2. 根据url发起请求

3. 解析响应结果

1. 提取目标数据

2. 如果存在新的url,进一步提取(会执行1-3这个循环)

4. 爬虫结束:所有符合条件的url请求全部获取完毕。

爬虫分为两类:

通用爬虫:是浏览器的重要组成部分,将互联网上所有的网页下载到本地,做了一个本分

提取重要数据(过滤数据,分词,去广告等等。。。)步骤跟上面的介绍类似

搜索引擎的爬去的url通过什么方式获取的??

1. 通过网站的外链

2. 通过网页提交url

3. 各大搜索引擎公司也会和DNS服务商合作

DNS:将域名转换成ip的技术

通用爬虫的缺点:

需要遵循robots协议

搜索引擎发挥的结果没有很好的针对性,不能够特殊的用户群体返回对应的数据

搜索引擎一般情况下获取的是文本信息,处理图像,音频,视频多媒体还是困难的。

聚焦爬虫:是面向主题的爬虫(有需求产出的),是一种定向的爬虫,在爬去网页数据的时候,会对网页筛选,保证抓取相关徐数据,以后更多的聚焦爬虫

判断页面静态或动态

是否静态:进入源码搜索内容有为静

是否动态:结果不变不停的获取数据(ajax)/ 源码中没有数据

找到数据:进入Network 中的XHR

Preview预览 

可以使用selenium(获取页面源码是经过浏览器渲染后的最终结果)

请求头:

User-Agent:模拟浏览器加载

Cookies:携带cookies第一可以维持回话,告诉浏览器用户身份信息

Referer:告诉浏览器,当前请求,是从哪个页面发起的。

urlopen参数:

url : 设定目标url

data=None:默认为None表示是个get请求;如果不为None,表示一个post请求

timeout:指定超时时间

cafile=None:可以指定证书文件(一般情况下用不到这个参数)

capath=None:指明整数路径

cadefault=False:是否要使用默认的证书

context=None:赋值则表示忽略来认证的ssl证书

你可能感兴趣的:(爬虫入门&分类)