Python网络爬虫(一):HTML/CSS/JavaScript介绍

1 HTML语言

        1.1 HTML简介

        HTML指的是超文本标记语言:HyperText Markup Language,它不是一门编程语言,而是一种标记语言,即一套标记标签。HTML是纯文本类型的语言,使用HTML编写的网页文件也是标准的文本文件,可以使用任意的文本编辑器例如记事本打开HTML文件,查看并修改HTML源代码。当用浏览器打开网页时,浏览器读取网页中的HTML代码,分析其语法结构,然后根据解释的结果显示网页内容。

        1.2 HTML结构

        下图是一个基本的HTML文档:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>这是一个网页</title>
</head>
<body><img src="词云图.png" width="500" height="700">
</body>
</html>
</html>

        该HTML文档的浏览器端显示如下: 

        其中,<!DOCTYPE html>用于指定文档的类型;<html>标签为文档的根标签,该标签不带任何属性;<head>标签是头标签,用来规定文件的标题、编码方式和url等信息;<body>标签为文档的主体标签,有很多的属性设置,如下表所示:

<body>标签的属性及其描述
属性描述
text设定页面文字的颜色
bgcolor设定页面背景的颜色
background设定页面的背景图像
bgproperties设定页面的背景图像为固定,不随页面的滚动而滚动
link设定页面默认的链接颜色
alink设定鼠标正在单击时的链接颜色
vlink设定访问过后的链接颜色
topmargin设定页面的上边距
leftmargin设定页面的左边距

2 CSS层叠样式表

        2.1 CSS概述

        CSS是Cascading Style Sheets的缩写,中文名叫层叠样式表,是一种标记语言,用于为HTML文档定义布局,涉及字体、颜色、边距、高度、宽度、高级定位等方面。

        2.2 选择器

        网页可以分为三个部分:结构(html)、表现(CSS)、行为(JavaScript)。CSS可以改变HTML中标签的样式,但是要告诉CSS改变谁、改什么。选择器就是用来告诉CSS改变谁,具体的有属性选择器、类和ID选择器。使用CSS改变元素样式有三种方式。

        2.2.1 内联样式 行内样式

        在标签内部通过style属性设置元素样式,开发时不要使用内联样式

<body><p style="color: red; font-size: 50px;">人之初</p>
</body>

        2.2.2 内部样式表

        将样式表编写到head中的style标签里,然后通过CSS的选择器来选中元素并为其设置各种样式,可以同时为多个标签设置样式,修改时只需要修改一次。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><style>p{color: red; font-size: 30px;}</style></head><body><p style="color: blue; font-size: 50px;">人之初</p><p2>性本善</p2><p>性相近</p><p>习相远</p>
</body>
</html>

        样式如下: 

         由图可以看出:内部样式表对设置过属性的标签都有效,但如果同时存在内联样式和内部样式表时以内联样式为准

         2.2.3 外部样式表

        可以将CSS编写为外部CSS文件,在html中通过link标签引入外部CSS文件。将样式编写到外部CSS文件中,可以使用到浏览器的缓存机制,从而加快网页的加载速度。

p{color: blue;font-size: 90px;
}

        上述代码是外部CSS文件index.css的代码,index.css放在和网页html文件的同级目录下(当然也可以自己指定目录)。html代码如下:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><link rel="stylesheet" href="index.css"></head><body><p>人之初</p><p>性本善</p><p>性相近</p><p>习相远</p>
</body>
</html>

        网页效果如下:

3 JavaScript   

        JavaScript是一种可以嵌入在HTML代码中由客户端浏览器运行的脚本语言。在网页中使用JavaScript代码,不仅可以实现网页特效,还可以响应用户请求实现动态交互的功能。

        通常情况下,在Web页面中使用JavaScript有三种方法,分别是行间事件、页面script标签嵌入、外部引入。

        3.1 行间事件

        行间事件主要用于事件,示例代码如下:

        

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>JS引入方式之行间事件</title>
</head>
<body><!-- 第一种嵌入js的方式:行间事件  --><input type="button" name="点我" value="点击" onclick="alert('hello!');">
</body>
</html>

        页面效果如下:

        3.2 页面script标签嵌入 

        在HTML文件中可以使用<script>...</script>标签将JavaScript脚本嵌入到其中。在HTML文档中可以使用多个<script>标签,每个<script>标签中可以包含多个JavaScript的代码集合。<script>标签常用的属性及其说明如下表所示:

<script>标签常用的属性及其说明
属性说明
language设置所使用的脚本语言及版本
src设置一个外部脚本文件的路径位置
type设置所使用的脚本语言,此属性已代替language属性
defer此属性表示当HTML文档加载完毕后再执行脚本语言

        示例代码如下:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>js引入方式一</title><script type="text/javascript">alert("hello world!");</script>
</head>
<body></body>
</html>

        效果如下:

 3.3 外部引入js

        在Web页面中引入JavaScript代码的另一种方法是采用链接外部JavaScript文件的形式。如果脚本代码比较复杂或是同一段代码可以被多个页面所使用,则可以将这些脚本代码放置在一个单独的文件中(保存文件的扩展名为.js),然后在需要使用该代码的Web页面中链接该JavaScript文件即可。示例代码如下:

        这里,hello.js文件与html文件放在了同级目录下。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/587946.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用Java流API构建树形结构数据

简介&#xff1a; 在实际开发中&#xff0c;构建树状层次结构是常见需求&#xff0c;如组织架构、目录结构或菜单系统。本教案通过解析给定的Java代码&#xff0c;展示如何使用Java 8 Stream API将扁平化的菜单数据转换为具有层级关系的树形结构。 1. 核心类定义 - Menu Data…

01-​JVM学习记录-类加载器

一、类加载器子系统 1. 作用-运输工具&#xff08;快递员&#xff09; 负责从文件系统或者网络中加载Class文件&#xff08;DNA元数据模板&#xff09;&#xff0c;Class文件开头有特定标识&#xff0c;魔术&#xff0c;咖啡杯壁&#xff08;class文件存于本地硬盘&#xff0c…

【嵌入式系统开发】001嵌入式Linux基础技术

文章目录 0. 学习路线1. Linux入门概念1.1 Linux 与 Windows 的区别1.2 shell是什么1.3 PATH环境变量1.3.1 什么是环境变量1.3.2 添加PATH环境变量的三种方法 1.4 Ubuntu 的文件系统组织方式简介 2. Linux的常见指令2.1 Linux指令基本形制2.2 目录与文件操作命令2.3 权限与属性…

Prometheus+grafana环境搭建redis(docker+二进制两种方式安装)(四)

由于所有组件写一篇幅过长&#xff0c;所以每个组件分一篇方便查看&#xff0c;前三篇 Prometheusgrafana环境搭建方法及流程两种方式(docker和源码包)(一)-CSDN博客 Prometheusgrafana环境搭建rabbitmq(docker二进制两种方式安装)(二)-CSDN博客 Prometheusgrafana环境搭建m…

OpenHarmony实战:轻量级系统之文件子系统移植

utils部件可被各业务子系统及上层应用使用&#xff0c;依赖芯片文件系统实现&#xff0c;需要芯片平台提供文件打开、关闭、读写、获取大小等功能。 移植指导 OpenHarmony文件系统需要适配如下HAL层接口&#xff1a; 表1 文件打开或关闭 接口名描述HalFileOpen文件打开或创…

20240402—Qt如何通过动态属性设置按钮样式?

前言 正文 1、点击UI文件 2、选择Bool型或是QString 3、设置后这里出现动态属性 4、这qss文件中绑定该动态属性 QPushButton[PopBlueBtn"PopBlueBtn"]{background-color:#1050B7;color:#FFFFFF;font-size:20px;font-family:Source Han Sans CN;//思源黑体 CNbor…

【R】Error in library(foreach) : 不存在叫‘foreach’这个名字的程辑包

Error in library(foreach) : 不存在叫‘foreach’这个名字的程辑包 此外: Warning message: package ‘parallel’ is a base package, and should not be updated 解决方法 缺少名为 foreach 的包&#xff0c;使用install.packages("foreach")将名为foreach 的包…

最新AI工具系统ChatGPT网站运营源码SparkAi系统V6.0版本,GPTs应用、AI绘画、AI换脸、垫图混图、Suno-v3-AI音乐生成大模型全支持

一、前言 SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统&#xff0c;支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美&#xff0c;那么如何搭建部署AI创作ChatGPT&#xff1f;小编这里写一个详细图文教程吧。已支持GPT…

深入理解 Vue3 中使用 v-model技术实现双向数据绑定

引言 在 Vue3 中&#xff0c;v-model 是一个非常有用的指令&#xff0c;它提供了一种简洁的方式来实现组件之间的双向数据绑定。本文将深入探讨 Vue3 中的 v-model 技术&#xff0c;包括它的工作原理、使用场景以及如何在自定义组件中应用 v-model。 一、v-model 的工作原理 在…

深度学习理论基础(五)卷积神经网络CNN

目录 前述&#xff1a;卷积神经网络基础1.卷积网络流程2.卷积网络核心3.卷积下采样4.卷积上采样--转置卷积 一、卷积神经网络层1.卷积层&#xff08;1&#xff09;内部参数&#xff1a;卷积核权重&#xff08;2&#xff09;内部参数&#xff1a;偏置&#xff08;3&#xff09;外…

【Frida】【Android】09_爬虫之Socket

&#x1f6eb; 系列文章导航 【Frida】【Android】01_手把手教你环境搭建 https://blog.csdn.net/kinghzking/article/details/136986950【Frida】【Android】02_JAVA层HOOK https://blog.csdn.net/kinghzking/article/details/137008446【Frida】【Android】03_RPC https://bl…

js实现websocket断线重连功能

在项目开发中我们可能经常要使用websocket技术&#xff0c;当连接发生断线后&#xff0c;如果不进行页面刷新将不能正常接收来自服务端的推送消息。为了有效避免这种问题&#xff0c;我们需要在客户端做断线重连处理。当网络或服务出现问题后&#xff0c;客户端会不断检测网络状…