前段时间,黄同学为大家写了一篇爬虫保姆级文章,大家非常喜欢。链接如下:

3000字 “婴儿级” 爬虫图文教学 | 手把手教你用Python爬取 “实习网”!

这篇文章其实已经是基础的基础了,但是如果搭配上今天的这篇文章,应该更棒了!

今天黄同学就手把手带你认识网页结构,这个对于后续爬虫定位数据,肯定是有帮助的。

我们直到,查看网页源码有两种方式:

  • ① 单击鼠标右键,点击查看网页源代码;
  • ② 单击电脑上的F12键;

以实习网为例,网页源代码结构大致就是这样的。

每个网页的源代码,都是由很多不同的标签,嵌套组成的。为了讲解方便,我们利用一个简单的html源代码,给大家讲解网页结构。

<!DOCTYPE html>
<html lang="zh-CN">
<head> <meta charset="utf-8">     #注意这个地方,文章编码都是看这里的,有时候解析源代码乱码,可能就是这里的问题!<title>网页标题</title> <meta name="keywords" content="关键字" /> <meta name="description" content="此网页描述" />
</head>
<body> 这里是网页正文内容
</body>
</html>

解释如下:

上图是一个最简单的HTMl文档,在上述基础框架上,再添加一些其它的HTML标签,添加一些内容,就可以构成一个丰富的网页了。

我们在爬虫过程中,常见的HTMl标签有div、ul、ol、li、h、a、p、span、img等。接下来,我们分别来介绍它。

注意:HTML标签通常是成对出现的(双边标记),比如 <div></div>,也有单独呈现的标签(单边标记),如:<br /><hr /><img src=“images/1.jpg” />等。

说明:给大家讲述这些标签的目的,是为了让大家清楚每个标签具体指代啥,HTML代码不清楚没关系,你只要记住不同标签实际展示出来的效果是啥!

在讲解之前,我们先用pycharm创建一个.html的文件,方便我们后面做标签的讲解演示。

如何在pycharm中创建一个.html的文件呢?

  • ① 打开pycharm;
  • ② 当出现下图,完成图中操作;
  • ③ 当出现下图,任意写一个名称即可;

三步我们就创建了一个最基本的HTML网页,结构大致如下:

div标签

用于定义一个个不同的区块,表示在网页中划定一块儿区域,用于展示内容。因此我们可以设置该区块儿的高height和宽width。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<div style="height:100px;width:500px;border:5px;">定义第一个区块儿</div><div style="height:500px;width:500px;border:8px;">定义第二个区块儿</div>
</body>
</html>

结果展示:

ul、ol和li标签

ul用于定义一个无序列表,ol用于定义一个有序列表,li可以存在于ul或ol之下,每个li中代码列表中的一条数据。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<div><ul><li>无序列表中的数据①</li><li>无序列表中的数据②</li><li>无序列表中的数据③</li></ul><ol><li>有序列表中的数据①</li><li>有序列表中的数据②</li><li>有序列表中的数据③</li></ol>
</div>
</body>
</html>

结果如下:

h标签

用于定义标题,分别从h1到h6,它们的字体分别由大到小。可以类比word中一级标题、二级标题的概念。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<h1>一级标题</h1>
<div><ul><li>无序列表中的数据①</li><li>无序列表中的数据②</li><li>无序列表中的数据③</li></ul>
<h2>二级标题</h2><ol><li>有序列表中的数据①</li><li>有序列表中的数据②</li><li>有序列表中的数据③</li></ol>
</div>
<h3>三级标题</h3>
</body>
</html>

结果如下:

a标签

用于定义一个超链接,点击超链接可以直接跳转。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<h1>一级标题</h1>
<div><ul><li>无序列表中的数据①</li><li>无序列表中的数据②</li><li>无序列表中的数据③</li></ul>
<h2>二级标题</h2>
<a href="https://blog.csdn.net/weixin_41261833">我是一个超链接</a><ol><li>有序列表中的数据①</li><li>有序列表中的数据②</li><li>有序列表中的数据③</li></ol>
</div>
<h3>三级标题</h3>
</body>
</html>

结果如下:

p标签

用于定义一个段落,每个段落占一行。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<h1>一级标题</h1>
<div><ul><li>无序列表中的数据①</li><li>无序列表中的数据②</li><li>无序列表中的数据③</li></ul>
<h2>二级标题</h2>
<a href="https://blog.csdn.net/weixin_41261833">我是一个超链接</a><ol><li>有序列表中的数据①</li><li>有序列表中的数据②</li><li>有序列表中的数据③</li></ol>
</div>
<h3>三级标题</h3>
<p>这是定义的第一个段落</p>
<p>这是定义的第二个段落</p>
<p>这是定义的第三个段落</p>
</body>
</html>

结果如下:

span标签

用于定义一个行内元素,不同的span标签定义的内容,都显示在一行,方便我们为每个块儿添加不同的格式。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<h1>一级标题</h1>
<div><ul><li>无序列表中的数据①</li><li>无序列表中的数据②</li><li>无序列表中的数据③</li></ul>
<h2>二级标题</h2>
<a href="https://blog.csdn.net/weixin_41261833">我是一个超链接</a><ol><li>有序列表中的数据①</li><li>有序列表中的数据②</li><li>有序列表中的数据③</li></ol>
</div>
<h3>三级标题</h3>
<p>这是定义的第一个段落</p>
<p>这是定义的第二个段落</p>
<p>这是定义的第三个段落</p><span>这是定义的第一个行内元素。</span>
<span>这是定义的第二个行内元素。</span>
<span>这是定义的第三个行内元素。</span>
</body>
</html>

结果如下:

标签img

定义一张图片,其中有一个src属性用于指定图片的地址。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<img>
<h1>一级标题</h1>
<div><ul><li>无序列表中的数据①</li><li>无序列表中的数据②</li><li>无序列表中的数据③</li></ul>
<h2>二级标题</h2>
<a href="https://blog.csdn.net/weixin_41261833">我是一个超链接</a><ol><li>有序列表中的数据①</li><li>有序列表中的数据②</li><li>有序列表中的数据③</li></ol>
</div>
<h3>三级标题</h3>
<p>这是定义的第一个段落</p>
<p>这是定义的第二个段落</p>
<p>这是定义的第三个段落</p><span>这是定义的第一个行内元素。</span>
<span>这是定义的第二个行内元素。</span>
<span>这是定义的第三个行内元素。</span><img src="https://i.loli.net/2020/05/30/Z5XrPidptFDb2BA.jpg" alt="加载失败">
</body>
</html>

结果如下:

好了,本文就讲述到这里。希望你看了本文以后,以后再遇到爬虫,每当看到这些标签,你就能大致知道它是什么就行。

所有的Python “爬虫“ 初学者,都应该看这篇文章!相关推荐

  1. Python文件IO基础,看这篇文章就够了!

    一切皆文件 Linux的设计哲学之一:一切皆文件. 因此,设备也是文件,对设备的操作可以转换成对文件的I/O操作. 冯诺依曼体系架构 CPU由运算器和控制器组成,计算机的五大部件如下: 运算器:完成各 ...

  2. Python爬虫-爬取快看漫画网图片并拼接成漫画长图

    Python爬虫-爬取快看漫画网图片并拼接成漫画长图 1.爬取图片 2.拼接图片 1.爬取图片 import os import requests from bs4 import BeautifulS ...

  3. python入门书籍推荐,看这篇文章就够,请!

    python入门书籍推荐,看这篇文章就够,请! 事实上,有关python的书籍很多很多,就当当网就有50000件和python有关的书籍,我特地去了当地的新华书店,蹲了大半天,回来给大家推荐,适合想学 ...

  4. python java混合编程_详解java调用python的几种用法(看这篇就够了)

    java调用python的几种用法如下: 在java类中直接执行python语句 在java类中直接调用本地python脚本 使用Runtime.getRuntime()执行python脚本文件(推荐 ...

  5. Python爬虫获取简书的用户、文章、评论、图片等数据,并存入数据库

    Python爬虫获取简书的用户.文章.评论.图片等数据,并存入数据库 爬虫定义:网络爬虫(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维 ...

  6. 好多人都说存储过程很难?认真看这篇文章就够了

    何为存储过程? 存储过程是在数据库管理系统中保存的.预先编译的并能实现某种功能的sql程序,说直白点,java知道吧?和java的方法一样. 每遇到一个新的知识点时,我们都会看看它的优点,从而加深对它 ...

  7. Android 8.0新特性(看这篇文章就够了)

    2019独角兽企业重金招聘Python工程师标准>>> 在刚结束不久的谷歌 I/O2017开发者大会上发布的第二个Android O(安卓8.0)开发者预览,并且向普通用户开放了第二 ...

  8. 每个程序员都必读的10篇文章

    作为一名Java程序员和软件开发人员,那些每个程序员都应该知道的XXX的文章教会了我不少东西,它们提供了某个特定领域的一些实用的并且有深度的信息,这些东西通常很难找到.在我学习的过程中我读到过许多非常 ...

  9. 每个程序员都必读的12篇文章

    作为一名Java程序员和软件开发人员,那些每个程序员都应该知道的XXX的文章教会了我不少东西,它们提供了某个特定领域的一些实用的并且有深度的信息,这些东西通常很难找到. 在我学习的过程中我读到过许多非 ...

最新文章

  1. 练习2-17 生成3的乘方表 (15 分)
  2. 「追根溯源」Ruby数组的uniq方法
  3. 键盘 Input子系统
  4. git远程仓库和分支
  5. Scala类的继承和抽象类
  6. idea调整主题和代码风格
  7. 分区表需要数据备份吗oracle,Oracle 分区表数据的导入与导出(1)
  8. 登录过gnome主题后无法再登录xfce主题
  9. 网管型工业交换机和 非网管型工业交换机的优缺点
  10. Eclipse的下载Spring Tool Suite(sts)
  11. 印象笔记打开错误_了不起的“印象”
  12. JAVA等差素数列蓝桥杯_等差素数列(2017蓝桥杯,二题 )
  13. html5 video cache,手机里的videoCache文件夹什么意思?可以删除吗?
  14. WELCOME TO `ICE WORLD`
  15. python课程设计——当当网Python图书数据分析
  16. 吾日三省吾身:三种光
  17. Kibana 7.13.2 启动时报错 TaskManager is unable to start as there the Kibana UUID is invalid
  18. win10 设置定时关机
  19. 源码大公开!Python爬取豆瓣电影Top250源代码,赶紧收藏!
  20. 使用Access时遇到的问题

热门文章

  1. php与python进行数据交互
  2. Android高手秘笈之View的绘制你应该知道的一切
  3. hdoj杭电问题分类
  4. “墨子号”量子科学实验卫星成果获克利夫兰奖
  5. SQL去重是用DISTINCT好,还是GROUP BY好?
  6. 什么是RAW文件系统?
  7. 利用JanusGraph图数据库统计股票涨停板后的走势
  8. 测试Friendly Flickr
  9. CListCtrl容纳的最多行数
  10. 泰克电输运/物性表征/量子材料/超导材料测试方案