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

news2024/12/23 1:26:13

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.coloradmin.cn/o/1564461.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

市场复盘总结 20240402

仅用于记录当天的市场情况&#xff0c;用于统计交易策略的适用情况&#xff0c;以便程序回测 短线核心&#xff1a;不参与任何级别的调整&#xff0c;采用龙空龙模式 一支股票 10%的时候可以操作&#xff0c; 90%的时间适合空仓等待 二进三&#xff1a; 进级率 50% 最常用的二…

【教程】Flutter 应用混淆

在移动应用开发中&#xff0c;保护应用代码安全至关重要。Flutter 提供了简单易用的混淆工具&#xff0c;帮助开发者在构建 release 版本应用时有效保护代码。本文将介绍如何在 Flutter 应用中使用混淆&#xff0c;并提供了相关的操作步骤和注意事项。 &#x1f4dd; 摘要 本…

Android Telephony框架

目录 一、简介二、应用层(Application)三、框架层(Framework)四、本地 RIL 层(RIL)五、驱动层(Modem)六、整体框架 一、简介 无论手机发展到如何智能的程度&#xff0c;最关键和重要的功能仍然是通讯&#xff0c;具体来说就是打电话、发短信、上网功能的使用。而整个 Android …

uniapp-设置UrlSchemes从外部浏览器H5打开app

需求&#xff1a;外部浏览器H5页面&#xff0c;跳转到uniapp开发的原生app内部。 1、uniapp内部的配置&#xff1a; &#xff08;1&#xff09;打开manifest->App常用其他设置&#xff0c;如下&#xff0c;按照提示输入您要设置的urlSchemes&#xff1a; &#xff08;2&am…

项目中 使用 spring cache redis 出现大量keys* 慢查询排查以及修复

前言 业务反馈 redis里有大量的慢查询 而且全是keys 的命令 排查 首先登录 阿里云查看redis的慢查询日志 如下 主要使用到redis cache的注解功能 分别是 CacheEvict 和 Cacheable 注意 CacheEvict 这个比较特殊 会进行驱逐缓存 说白就会删除缓存或者让缓存失效 第一时间想…

零基础入门多媒体音频(7)-AAOS audio

概览 Android Automotive OS (AAOS) 是基于核心的 Android 音频堆栈打造&#xff0c;以支持用作车辆信息娱乐系统。AAOS 负责实现信息娱乐声音&#xff08;即媒体、导航和通讯&#xff09;&#xff0c;但不直接负责具有严格可用性和时间要求的铃声和警告。 虽然 AAOS 提供了信号…

AJAX——介绍

同步与异步 原生的AJAX 代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"wi…

UE4_碰撞_碰撞蓝图节点——Get/Set Collision Object Type

一、get collision object type set collision object type 二、 使用方法&#xff1a; 通过对射线检测命中物体的碰撞中的对象类型object type进行判定来重新设置碰撞的对象类型&#xff0c;来更改碰撞响应的物体响应的方式。比方说一开始不让你进门&#xff0c;你可以通…

Ansys Zemax | 如何将光栅数据从Lumerical导入至OpticStudio(上)

附件下载 联系工作人员获取附件 本文介绍了一种使用Ansys Zemax OpticStudio和Lumerical RCWA在整个光学系统中精确仿真1D/2D光栅的静态工作流程。将首先简要介绍方法。然后解释有关如何建立系统的详细信息。 本篇内容将分为上下两部分&#xff0c;上部将首先简要介绍方法工…

OpenHarmony实战:Combo解决方案之ASR芯片移植案例

本方案基于 OpenHarmony LiteOS-M 内核&#xff0c;使用 ASR582X 芯片的 DEV.WIFI.A 开发板进行开发移植。作为典型的 IOT Combo&#xff08;Wi-FiBLE&#xff09;解决方案&#xff0c;本文章介绍 ASR582X 的适配过程。 编译移植 目录规划 本方案的目录结构使用 Board 和 So…

Shadow

Shadow Mapping 最关键的思想是阴影出现的点是我们可以看到而光源看不到的点。 主要思路&#xff1a; 从光源渲染一个深度图表示能看到的地方从我们的眼中看到的点投射到光源相机中看光源相机能不能看到(是不是对应的深度) 这个方法中有一些问题&#xff1a; Hard shadows (poi…

UE4 方块排序动画

【动画效果】 入动画&#xff1a; 出动画&#xff1a; 【分析】 入动画&#xff1a;方块动画排序方式为Z字形&#xff0c;堆砌方向为X和Y轴向 出动画&#xff1a;方块动画排序方式为随机 【关键蓝图】 1.构建方块砌体 2.入/出动画

xss【2】

1.xss钓鱼 钓鱼攻击利用页面&#xff0c;fish.php黑客钓鱼获取到账号密码存储的位置 xss进行键盘记录 2.xss常规防范 3.xss验证payload XSS&#xff08;跨站攻击&#xff09;_details/open/ontoggle-CSDN博客

达梦DMHS-Manager工具安装部署

目录 1、前言 1.1、平台架构 1.2、平台原理 2、环境准备 2.1、硬件环境 2.2、软件环境 2.3、安装DMHS 2.3.1、源端DMHS前期准备 2.3.2、源端DMHS安装 2.3.3、目的端DMHS安装 3、DMHS-Manager客户端部署 3.1、启动dmhs web服务 3.2、登录web管理平台 4、添加DMHS实…

元宇宙虚拟空间的场景构造(二)

前言 该文章主要讲元宇宙虚拟空间的场景构造&#xff0c;基本核心技术点&#xff0c;不多说&#xff0c;直接引入正题。 场景的构造 使用引入的天空模块 this.sky new Sky(this); 在Sky模块里&#xff0c;有设置对其中的阳光进行不同时间段的光线处理。而天空又是怎么样的…

ArcGis研究区边界提取

ArcGis研究区边界提取 *0* 引言*1* 有的步骤0 引言 GRACE数据处理前要先确定研究范围,而大多情况下所选的研究区都是有特殊意义的,比如常年干旱、经济特区、降水丰富等,这些区域往往有精确的边界,那就要从大的区块中将研究范围抠出来,获取相应坐标,以量化区域重力变化。那…

视频基础学习四——视频编码基础一(冗余信息)

文章目录 前言一、编码压缩的原理1.空间冗余帧内预测 2.时间冗余帧间预测运动估计运动补偿 3.编码冗余4.视觉冗余 二、压缩编码的流程1.编码器2.编解码流程 总结 前言 上一篇文章介绍了视频帧率、码率、与分辨率。也介绍了为什么需要对视频进行压缩&#xff0c;因为720P、rgb2…

【隐私计算实训营007——隐语SCQL的架构详细拆解】

1.SCQL Overview SCQL属于隐私保护的BI。 1.1 对于安全聚合查询语言的两种常见的技术方案 1.2 SCQL系统组件 SCDB 部署在可信第三方&#xff0c;负责将query翻译成密态执行图&#xff0c;下发给SCQLEngine&#xff0c;本身不参与计算 SCQLEngine 部署在数据参与方&#xff…

某音乐平台歌曲信息逆向之webpack扣取

逆向网址 aHR0cHM6Ly95LnFxLmNvbS8 逆向链接 aHR0cHM6Ly95LnFxLmNvbS9uL3J5cXEvc29uZ0RldGFpbC8wMDJkdzRndjFabWlHdA 逆向接口 aHR0cHM6Ly91Ni55LnFxLmNvbS9jZ2ktYmluL211c2ljcy5mY2c 逆向过程 请求方式&#xff1a;POST 逆向参数 sign zzbd8c72309rdslvlnjwk8pthj2lw462f12…

Java 设计模式系列:备忘录模式

简介 备忘录模式是一种软件设计模式&#xff0c;用于在不破坏封闭的前提下捕获一个对象的内部状态&#xff0c;并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 备忘录模式提供了一种状态恢复的实现机制&#xff0c;使得用户可以方便地回到一个特定…