当你决定去某个网页后,
- 爬虫模拟浏览器去向服务器发出请求, 获取数据
- 等服务器响应后,爬虫程序可以代替浏览器帮我们解析数据;
- 爬虫根据我们设定的规则批量提取相关数据,而不需要我们去手动提取;
- 爬虫可以批量地把数据存储到本地。
图例:

下边讲html:
html是一种文件格式,可以用浏览器打开。html文件可以被查看、编辑、修改。

HTML文档的最外层标签一定是< html>,里面嵌套着< head>元素与< body>元素。< head>元素代表了【网页头】,< body>元素代表了【网页体】,这是最基本的网页结构。
HTML文档和网页的内容一定是一一对应的。只是,【网页头】的内容不会被直接呈现在浏览器里的网页正文中,而【网页体】的内容是会直接显示在网页正文中的。
例:
<head>
<meta charset="utf-8">
<title>我是网页的名字</title>
</head>
先来看< head>元素,也就是【网页头】,它里面一般会有哪些内容呢。
第2行的< meta charset=“utf-8”>定义了HTML文档的字符编码。
第3行的< title>元素用来定义网页的标题,这个标题就是显示在浏览器的标签页中的内容
【网页头】中的编码是没办法在网页中直接被看到的,标签页的内容也不属于网页的正文。而< body>元素中,即【网页体】,就是那些你能看到的显示在网页中的内容了。
一个网页由哪几部分组成:
标签:
网页上充满标签。标签由两部分构成——开始标签和结束标签。正常情况下,二者内容一致,但结束标签会多一个符号“/”,构成一个完整的标签。少数情况会以<文字文字文字/>,或者<文字文字文字>出现.
| 开始标签示例 | 结束标签示例 |
|---|---|
| < head> | < /head> |
标签是可以嵌套标签的,不同的标签会有它不同的功能
元素:
开始标签+结束标签+中间的所有内容,它们在一起就组成了【元素】
下边列出几个常见元素:

属性:
属性位于开始标签内,由属性名和属性的值两部分组成,用来描述标签的特性。复杂的网页会有许多不同属性,比如target,render,suda-uatrack,class,extra-data,href等。
例:
比如style=…,如标签的含义是网页中的一块区域,style属性就描述了这块区域的高、宽、底色等信息。
在属性里,有4个需要我们特别留意:
1)id属性
有的元素会有id属性,id属性在一个网页中是唯一的。所以我们可以通过查找id的方式,来找到这个元素。比如id=“201”
2)class属性:
class的作用是定义元素的样式,而且可以复用。也就是说在一个网页里,如果元素最终呈现的样式是一样的,那么它们就可能采用同一个class属性。每个属性都还有它对应的值——就是每个等号后面的那部分,比如class=“title”就是一个class属性,值为title。
3)herf属性:
添加链接
4)style属性:
style属性可以用来定义网页文本的样式,比如字体大小、颜色、间距、对齐方式等等。
在上面的代码中,style属性添加在了
的开始标签中,因为属性通常都是在HTML元素的开始标签中设置的。
head和body
html有两个最大的元素:head和body
body里面有一个div元素;div元素里面又有6个小div元素;其中的第3个div元素里有一个h3元素和一个bl元素;bl元素里有4个带有id属性的li元素;所以如果想找id=201的元素,它的完整路径就是html>body>div>div>bl>li#201
其实浏览器会显示出来路径,如下图红圈内:

本文介绍了爬虫的基本原理,包括如何模拟浏览器发送请求获取HTML数据,以及如何解析和提取数据。HTML文档结构由<head>和<body>组成,其中<head>定义网页元信息,<body>包含可见内容。爬虫可以批量提取和存储数据。文中还探讨了HTML标签、元素、属性,以及常用的属性如id、class、href和style。此外,文章讲解了requests库的GET和POST方法,以及如何处理响应。最后,介绍了BeautifulSoup库用于解析HTML和提取数据的方法。

3860

被折叠的 条评论
为什么被折叠?



