2024.4.13 Python 爬虫复习day01

目录

day01_HTTP协议HTML页面web服务器

各类名词解释

URL统一资源定位符

HTTP协议

HTML页面

知识点:

第一个页面

标题标签和图片标签

注册页面

登录页面

WEB服务器

安装fastapi和uvicorn

原始命令方式

镜像源命令方式

工具方式

快速搭建web服务器

知识点:

示例:


day01_HTTP协议HTML页面web服务器

各类名词解释

web: 万维网WWW是World Wide Web的简称,也称为Web、3W等。WWW是基于客户机/服务器方式的信息发现技术和超文本技术的综合
​
超文本: (Hyper Text,HT )是超级文本的中文缩写。 超文本是用超链接的方法,将各种不同空间的文字信息组织在一起的网状文本。超文本更是一种用户界面范式,用以显示文本及与文本之间相关的内容
​
dns: 域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。
​
http: 超文本传输协议(Hypertext Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。
​
tcp: 传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议
​
udp: 用户数据报协议(UDP,User Datagram Protocol)。UDP 为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据包的方法。
​
七层网络协议结构:  物理层 数据链路层  网络层  传输层  会话层 表示层  应用层
​

URL统一资源定位符

url: (Uniform Resoure Locator) 统一资源定位符,也就是我们常说的网址
​
url组成: 协议部分  域名部分  资源路径部分  查询参数部分(可选)
​
用户在浏览器根据URL发送请求,获取响应的过程: F12或者右键_检查 ->  网络(network)1.准备有效的URL2.打开浏览器输入URL(本质去访问web服务器)回车3.注意: 如果URL中是域名,先根据域名在本地的hosts文件中查找,如果本地没有再去dns服务器中找对应的ip地址4.根据ip地址访问到对应的服务器,web服务器根据要访问资源路径返回对应的资源5.浏览器接收服务器响应回来的资源,如果有图片视频音频等链接,浏览器自己依次单独发送对应URL请求6.最终浏览器把所有资源渲染成页面,展示给用户

HTTP协议

HTTP协议是基于TCP协议的
​
HTTP协议作用:  规定了浏览器和web服务器直接的通信格式
​
web服务器: 能够解析HTTP协议的服务器(接收浏览器的请求和响应数据给浏览器)
​
通信格式:请求get方式:  请求行  请求头  请求空行          举例: get资源路径部分后拼接查询参数  /?pwd=123post方式: 请求行  请求头  请求空行  请求体   举例: post资源路径部分  /  请求体: pwd=123响应格式: 响应行  响应头  响应空行 响应体状态码: 2xx: 成功  3xx:重定向  4xx: 客户端错误   5xx:服务器错误

HTML页面

知识点:

HTML: 全称为:HyperText Mark-up Language, 指的是超文本标记语言 
​
标记:就是标签    
​
双标签格式: <标签名称> 标签内容 </标签名称>   
​
单标签格式: <标签名称/>
​
标准结构:<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>标题</title></head><body>要展示的内容</body></html>

第一个页面

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>我的第一个页面
</body>
</html>

标题标签和图片标签

双标签格式: <标签名称> 标签内容 </标签名称>    举例: <h1>标题</h1>
​
单标签格式: <标签名称/>    举例: <img src='图片路径' alt='提示语' title='标题'/>
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>html页面</title>
</head>
<body><h1 style="color: orangered">--------欢迎来到我的页面--------</h1><h2>二级标题</h2><h3>三级标题</h3><h4>四级标题</h4><h5>五级标题</h5><h6>六级标题</h6>
​<img src="hm.jpg" alt="图片加载中..." title="图片"/>
</body>
</html>

注册页面

form表单: action: 跳转URL method: 请求方式 get或者postinput标签text: 小文本框password: 密码框radio: 单选框checkbox: 多选框file: 上传文件textarea: 大文本框submit: 提交reset: 重置button: 普通按钮
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>注册页面</title>
</head>
<body>
<h1 style="color: blue">欢迎来到注册页面</h1>
<form action="http://www.itheima.com/" name="register" method="post"><label>用户名: <input type="text" name="username"></label><br><label>密&emsp;码: <input type="password" name="pwd"></label><br><label>性&emsp;别: <input type="radio" name="gender" value="男">男<input type="radio" name="gender" value="女">女</label><br><label>爱&emsp;好: <input type="checkbox" name="hobby" value="eat">吃饭<input type="checkbox" name="hobby" value="sleep">睡觉<input type="checkbox" name="hobby" value="play_doudou">打豆豆</label><br><label>头&emsp;像: <input type="file" name="head_file"></label><br>&emsp;&emsp;<input type="submit" value="提交">&emsp;&emsp;<input type="reset" value="重置">
</form>
</body>
</html>

登录页面

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>登录页面</title>
</head>
<body>
<h1 style="color: blue">欢迎来到登录页面</h1>
<form action="http://www.itheima.com/" name="register" method="get"><label>用户名: <input type="text" name="username"></label><br><label>密&emsp;码: <input type="password" name="pwd"></label><br>&emsp;<input type="submit" value="提交">&emsp;<input type="reset" value="重置">
</form>
</body>
</html>

WEB服务器

安装fastapi和uvicorn

原始命令方式

前提: python正确配置了解释器

基本格式: pip install 库名
​
安装fastapi:  pip install fastapi
​
安装uvicorn:  pip install uvicorn
镜像源命令方式
问题: 默认是从国外服务器下载资源,如果网速较慢,可以从国内的镜像源下载
​
格式:  pip install 库名 -i 镜像源url
​
安装fastapi命令:  pip install fastapi -i https://pypi.tuna.tsinghua.edu.cn/simple
​
安装uvicorn命令:  pip install uvicorn -i https://pypi.tuna.tsinghua.edu.cn/simple
工具方式

 

快速搭建web服务器

知识点:
快速搭建web服务器步骤:1.导包(fastapi和uvicorn)2.创建对象(注意:创建对象的时候,类名后加小括号())3.让对象帮助咱们干活(接收浏览器请求并且给浏览器响应)4.启动服务器(必须传入上述创建的对象,注意:ip地址和端口号有默认,当然也可以自己指定)
示例:
# 1.导包(fastapi和uvicorn)
from fastapi import FastAPI
from fastapi import Response
import uvicorn
​
# 2.创建对象(注意:创建对象的时候,类名后加小括号())
api = FastAPI()
​
​
# 3.让对象帮助咱们干活(接收浏览器请求并且给浏览器响应)
# 装饰器根据要访问的资源路径调用对应的函数
@api.get('/')
def show():res = Response('load index.html...')return res
​
@api.get('/hm.jpg')
def show():res = Response('load hm.jpg...')return res
​
​
# 4.启动服务器(必须传入上述创建的对象,注意:ip地址和端口号有默认,当然也可以自己指定)
uvicorn.run(api, host='127.0.0.1', port=9091)

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

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

相关文章

openGauss学习笔记-266 openGauss性能调优-TPCC性能调优测试指导-文件系统配置

文章目录 openGauss学习笔记-266 openGauss性能调优-TPCC性能调优测试指导-文件系统配置266.1 查看当前数据盘的文件系统类型266.2 对于需要修改的磁盘&#xff0c;备份所需的数据至其他磁盘或其他服务器266.3 格式化磁盘为xfs文件系统266.4 执行**步骤一** openGauss学习笔记-…

你见过哪些目瞪口呆的 Java 代码技巧?

自从毕业后&#xff0c;今年已经是我工作的第 8 个年头了&#xff0c;我甚至都快忘记了到底是那年毕业的。从出来本人一直在做 Java 相关的工作&#xff0c;现在终于有时间坐下来&#xff0c;写一篇关于 Java 写法的一篇文章&#xff0c;来探讨一下如果你真的是一个 Java 程序员…

[Leetcode]用队列实现栈

1.用队列实现栈 请你仅使用两个队列实现一个后入先出&#xff08;LIFO&#xff09;的栈&#xff0c;并支持普通栈的全部四种操作&#xff08;push、top、pop 和 empty&#xff09;。 实现 MyStack 类&#xff1a; void push(int x) 将元素 x 压入栈顶。int pop() 移除并返回…

C语言和JAVA语言的语法小区别

学习记录 记录一些学习过程的&#xff0c;防止后续遗忘&#xff0c;方便回顾 文章目录 学习记录一、数据类型二、标识符三、流程控制语句四、输入输出五、switch语句六、数组 一、数据类型 C语言 基本数据类型&#xff1a; 整型&#xff1a;short&#xff08;2B&#xff09;…

《Kubernetes部署篇:基于Kylin V10+ARM架构CPU+外部etcd使用containerd部署K8S 1.26.15容器版集群(多主多从)》

总结&#xff1a;整理不易&#xff0c;如果对你有帮助&#xff0c;可否点赞关注一下&#xff1f; 更多详细内容请参考&#xff1a;企业级K8s集群运维实战 1、在当前实验环境中安装K8S1.25.14版本&#xff0c;出现了一个问题&#xff0c;就是在pod中访问百度网站&#xff0c;大…

Mysql嵌套查询太简单了

1、子查询的分类 不相关查询&#xff1a; 子查询能独立执行 相关查询&#xff1a; 子查询不能独立运行 相关查询的执行顺序&#xff1a; 首先取外层查询中表的第一个元组,根据它与内层查询相关的属性值处理内层查询, 若WHERE子句返回值为真&#xff0c;则取此元组放入结果…

maven3.9+下载安装

maven介绍 Maven 是一个项目管理和理解工具&#xff0c;它基于项目对象模型&#xff08;POM&#xff09;概念。Maven 可以帮助开发者定义项目结构、依赖关系、构建过程以及其他任务。它主要用于 Java 项目&#xff0c;但也可以用于其他类型的项目。Maven 的主要目标是简化构建…

hacs安装midea ac lan 0.3.22无法下载

1.hacs下载midea ac lan 0.3.20安装成功 2.GitHub下载0.3.22zip包 3.上传至群晖文件夹 4.SSH连接操作先备份一下 cp -r /var/packages/HomeAssistant/home/.homeassistant/custom_components/midea_ac_lan/ /volume2/homes/ 5.删除 rm -rf /var/packages/HomeAssistant/home/.h…

Centos7 ElasticSearch集群搭建

1. 服务器环境配置 1.1 配置hosts文件 3台服务器都要执行 vim /etc/hosts; # 将以下内容写入3台服务器hosts文件 192.168.226.148 es001 192.168.226.149 es002 192.168.226.150 es003 1.2 关闭防火墙 3台服务器都要执行 systemctl stop firewalld; systemctl disable…

探究汇编中的栈帧和局部变量

本节视频学习链接&#xff1a;https://pan.quark.cn/s/2db92a03734d 汇编语言中的函数调用和局部变量的管理是通过栈帧&#xff08;Stack Frame&#xff09;来实现的。栈帧是在函数调用时创建的&#xff0c;它存储了函数的局部变量、参数以及返回地址。本文将详细讲解栈帧的概…

未来互联网

未来互联网的发展将涉及人、物、环境三个方面的系统整合&#xff0c;下面是具体的解释&#xff1a; 人&#xff1a;未来互联网将更加人性化&#xff0c;通过智能化技术实现个性化服务和定制化体验&#xff0c;从而提高用户的满意度和忠诚度。同时&#xff0c;未来互联网也将加强…

Python语言零基础入门——条件判断

目录 一、单分支选择结构&#xff1a;if语句 二、双分支选择结构&#xff1a;if-else 三、多分支选择结构 四、嵌套选择 五、match语句 match与if的对比 六、代码规范 七、练习题 1.年龄判断 2.成绩判断 3.闰年判断 一、单分支选择结构&#xff1a;if语句 if 条件&…

STM 32 GPIO 的几种工作模式怎么运行?

在嵌入式开发领域&#xff0c;STM32微控制器系列因为功能强大和灵活性而广受欢迎。 其中&#xff0c;通用输入输出&#xff08;GPIO&#xff09;是最基础的功能&#xff0c;用于与外部世界的直接电子接口。 STM32 GPIO可以配置为多种工作模式&#xff0c;以适应不同的应用场景…

OpenCV从入门到精通实战(四)——答题卡识别判卷系统

基于OpenCV的答题卡识别系统&#xff0c;其主要功能是自动读取并评分答题卡上的选择题答案。系统通过图像处理和计算机视觉技术&#xff0c;自动化地完成了从读取图像到输出成绩的整个流程。下面是该系统的主要步骤和实现细节的概述&#xff1a; 1. 导入必要的库 系统首先导入…

偏微分方程算法之一阶双曲差分法

目录 一、研究目标 二、理论推导 2.1 引言 2.2 迎风格式 2.3 完全不稳定差分格式 2.4 蛙跳格式&#xff08;Leapfrog&#xff09; 2.5 Lax-Friedrichs格式 2.6 Lax-Wendroff格式 2.7 Beam-Warming格式 2.8 隐格式 2.9 Courant-Friedrichs-Lewy条件&#xff08;CFL条…

(51单片机)第十一章-串行口应用提高

11.1 方式0应用 在第6章中&#xff0c;已经对51单片机的串行口结构做过详细介绍&#xff0c;并且通过实例讲解了串行口的4种工作方式中方式1的具体用法&#xff0c;本节详细讲述串行口方式0的用法。 串行口方式0被称为同步移位寄存器的输入/输出方式&#xff0c;主要用于扩展并…

【结构型模式】外观模式

​一、外观模式概述 外观模式定义与意图&#xff1a;外观类为复杂的子系统提供了一个统一的入口。外观模式定义了一个高层接口&#xff0c;这个接口使得这一子系统更加容易使用。&#xff08;对象结构型模式&#xff09; 外观模式的特点&#xff1a; 1.又叫做门面模式&#xf…

试驾小米SU7后,我准备退了我的订单

文 | AUTO芯球 作者 | 雷歌 我真想退了我之前大定的小米SU7Pro版&#xff01; 前两天我不是和朋友三人一起开着问界M9去试驾SU7了嘛&#xff0c; 说实话&#xff0c;这一圈下来&#xff0c;有欣喜有失望。 SU7的优点特别明显&#xff0c;也很突出&#xff0c; 就是它的底…

了解MySQL InnoDB多版本

了解MySQL InnoDB多版本 在数据库管理系统中&#xff0c;多版本并发控制&#xff08;MVCC&#xff09;是一种用于实现高并发和事务隔离的技术。MySQL的InnoDB存储引擎支持MVCC&#xff0c;这使得它可以在提供高事务性能的同时&#xff0c;也保证了数据的一致性和隔离性 MVCC简…

MySQL中的死锁预防和解决

MySQL中的死锁预防和解决 死锁是数据库管理系统中常见的问题&#xff0c;特别是在高并发的应用场景下。MySQL数据库中的死锁会导致事务处理速度减慢&#xff0c;甚至完全停止&#xff0c;因此理解并预防死锁至关重要。本文将详细介绍如何预防MySQL中的死锁&#xff0c;包括常用…