【大数据作业五】理解爬虫原理

作业要求来自: https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2851

1. 简单说明爬虫原理

向网站发起请求,获取资源后分析并提取有用数据的程序。

流程:

2. 理解爬虫开发过程

1).简要说明浏览器工作原理;

浏览器渲染过程:

  • 解析html 为DOM 树
  • 渲染树结构
  • 布局渲染树
  • 绘制渲染树

解析html 为DOM 树 :
1)HTML字节流解码变为字符流。根据不同编码方式,如UTF-8 GBK来解码
2)词法分析:将字符流解析为一个个词语
3)语法分析:通过不同标签,生成node节点
4)构建DOM树:将node节点组织成DOM树

CSS解析器读取CSS文件,得到元素最匹配的样式
1)经过词法分析和语法分析,生成一个个CSS规则。规则由选择器和一个key:value对组成的属性集合构成
2)进行规则匹配:根据元素信息,如id class 标签,通过不同优先级得到元素最匹配的CSS规则

2).使用 requests 库抓取网站数据;

requests.get(url) 获取校园新闻首页html代码

3).了解网页

写一个简单的html文件,包含多个标签,类,id

4).使用 Beautiful Soup 解析网页;

通过BeautifulSoup(html_sample,'html.parser')把上述html文件解析成DOM Tree

select(选择器)定位数据

找出含有特定标签的html元素

找出含有特定类名的html元素

找出含有特定id名的html元素

 

3.提取一篇校园新闻的标题、发布时间、发布单位

url = 'http://news.gzcc.cn/html/2019/xiaoyuanxinwen_0320/11029.html'

原文地址:https://www.cnblogs.com/makky1116/p/10594373.html