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.准备有效的URL
    2.打开浏览器输入URL(本质去访问web服务器)回车
    3.注意: 如果URL中是域名,先根据域名在本地的hosts文件中查找,如果本地没有再去dns服务器中找对应的ip地址
    4.根据ip地址访问到对应的服务器,web服务器根据要访问资源路径返回对应的资源
    5.浏览器接收服务器响应回来的资源,如果有图片视频音频等链接,浏览器自己依次单独发送对应URL请求
    6.最终浏览器把所有资源渲染成页面,展示给用户

HTTP协议

HTTP协议是基于TCP协议的
​
HTTP协议作用:  规定了浏览器和web服务器直接的通信格式
​
web服务器: 能够解析HTTP协议的服务器(接收浏览器的请求和响应数据给浏览器)
​
通信格式:
    请求
        get方式:  请求行  请求头  请求空行          举例: get资源路径部分后拼接查询参数  /?pwd=123
        post方式: 请求行  请求头  请求空行  请求体   举例: 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或者post
    input标签
        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)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

CH254X 8051芯片手册介绍

1 8051CPU 8051是一种8位元的单芯片微控制器&#xff0c;属于MCS-51单芯片的一种&#xff0c;由英特尔(Intel)公司于1981年制造。Intel公司将MCS51的核心技术授权给了很多其它公司&#xff0c;所以有很多公司在做以8051为核心的单片机&#xff0c;如Atmel、飞利浦、深联华等公…

ARMv8-A架构下的外部debug模型之外部调试事件(external debug events)概述

外部调试器与处理器之间的握手与external debug events 一&#xff0c;External Debug的使能二&#xff0c;外部调试器和CPU之间的握手三&#xff0c;外部调试事件 External debug events1. External debug request event2. Halt instruction debug event3. Halting step debug…

是的,本科毕业八年,我考研了

今天&#xff0c;是一篇纯分享文。 是的&#xff0c;本科毕业八年&#xff0c;我考研了。 停更10个月&#xff0c;历时296天&#xff0c;我考研上岸了。 小伙伴们&#xff0c;好久不见。 一 发今年第一篇文章的时候刚处理完后续事宜&#xff0c;就简单说了句&#xff0c;后台…

Vue3 ts环境下的PropType

简介 在Typscript中&#xff0c;我们可以使用PropType进行类型的推断与验证。在日常的开发中我们常常会遇到下面这样的场景&#xff1a; 我们通过request请求从服务端获取了一条数据&#xff0c;数据是个Array的格式&#xff0c;Array中的每个元素又是一个对象&#xff0c;像下…

【神经网络与深度学习】循环神经网络基础

tokenization tokenization&#xff1a;分词 每一个词语都是token 分词方法&#xff1a;转为单个词、转为多个词语 N-gram表示法 准备词语特征的方法 &#xff08;把连续的N个词作为特征&#xff09; 如 ”我爱你“——>[我&#xff0c;爱&#xff0c;你] 2-gram——[[我…

java项目之校园兼职系统(ssm框架+mysql数据库+文档)

项目简介 校园兼职系统的主要使用者分为&#xff1a;管理员&#xff1a;首页、个人中心、专业管理、商家管理、热门兼职管理、学生管理、兼职接单管理、学生咨询管理、兼职任务管理、完成评价管理、管理员管理、系统管理等模块信息的查看及相应操作&#xff1b;学生&#xff1…

在vue中配置样式 max-width:100px时,发现和width:100px一样没有对应的递增到最大宽度的效果?怎么回事?怎么解决?

原因&#xff1a; 可能时vue的样式大部分和display相关&#xff0c;有很多的联系&#xff0c;导致不生效 解决&#xff1a; 对设置max-width样式的元素设置display:inline-block;属性&#xff0c;即可生效&#xff0c;实现随着子元素的扩展而扩展并增加固定到最大的宽度

使用 ASE 拼接分子

在部分应用场景下&#xff0c;我们需要对两个分子片段进行拼接&#xff0c;例如锂电电解液数据库 LiBE 然而&#xff0c;当前并没有合适的拼接方法。下面是一些已有方法的调研结果&#xff1a; 在 LiBE 论文的附录里&#xff0c;作者使用 pymatgen 进行分子拼接。 其思路是&…

分享2024高校专业建设思路及建设效果

广东泰迪智能科技股份有限公司成立于2013年&#xff0c;是一家专业从事大数据、人工智能等数据智能技术研发、咨询和培训的高科技企业&#xff0c;公司基于十余年的数据智能产业实践经验&#xff0c;构建“产、岗、课、赛、证、文”融通的特色应用型人才培养模式&#xff0c;助…

MQ:延迟队列

6.1场景&#xff1a; 1.定时发布文章 2.秒杀之后&#xff0c;给30分钟时间进行支付&#xff0c;如果30分钟后&#xff0c;没有支付&#xff0c;订单取消。 3.预约餐厅&#xff0c;提前半个小时发短信通知用户。 A -> 13:00 17:00 16:30 延迟时间&#xff1a; 7*30 * 60 *…

微信营销快捷回复和微信多开-微信UI自动化(.Net)

整理 | 小耕家的喵大仙 出品 | CSDN&#xff08;ID&#xff1a;lichao19897314&#xff09; Q Q | 978124155 关于项目背景和本软件的介绍 因为本人前期基于微信自动化这块编写了一些文章&#xff0c;所以最近想着将文章内容点合并后开发一款真正能帮助别人的软件&#xff0…

AI赋能档案开放审核:实战

关注我们 - 数字罗塞塔计划 - 为进一步推进档案开放审核工作提质增效&#xff0c;结合近几年的业务探索、研究及项目实践&#xff0c;形成了一套较为成熟、高效的AI辅助档案开放审核解决方案&#xff0c;即以“AI人工”的人机协同模式引领档案开放审机制创新&#xff0c;在档…

07.QT信号和槽-2

一、自定义信号和槽 在Qt中&#xff0c;允许⾃定义信号的发送⽅以及接收⽅&#xff0c;即可以⾃定义信号函数和槽函数。但是对于⾃定义的信号函数和槽函数有⼀定的书写规范。 1.基本语法 1.1 自定义信号 &#xff08;1&#xff09;⾃定义信号函数必须写到"signals"…

Windows不常见问题集

● 解决CACLS 禁止修改计算机名 管理员权限运行cmd&#xff1a;cacls %SystemRoot%\System32\netid.dll /grant administrators:f ● Excel 2010 AltTab組合鍵設置 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer&#xff0c;在該路徑建32字元DWO…

YOLOv8使用设备摄像头实时监测

代码如下&#xff1a; from ultralytics import YOLO import cv2 from cv2 import getTickCount, getTickFrequency yoloYOLO(./yolov8n.pt)#摄像头实时检测cap cv2.VideoCapture(0) while cap.isOpened():loop_start getTickCount() #记录循环开始的时间&#xff0c;用于计…

Cesium.js--》探秘Cesium背后的3D模型魔力—加载纽约模型

今天简单实现一个Cesium.js的小Demo&#xff0c;加强自己对Cesium知识的掌握与学习&#xff0c;先简单对这个开源库进行一个简单的介绍吧&#xff01; Cesium 是一个开源的地理空间可视化引擎&#xff0c;用于创建基于 Web 的三维地球应用程序。它允许开发人员在网页上呈现高度…

暴雨孙辉:做好服务器,但更要辟出技术落地之道

稳扎稳打一直是暴雨的风格&#xff0c;这在被访者孙辉的身上尽显。作为暴雨&#xff08;武汉暴雨信息发展有限公司&#xff09;中国区销售及市场副总裁&#xff0c;在谈及公司的技术发展与市场推广走势之时&#xff0c;孙辉沉稳、敏锐且逻辑清晰。 因在服务器领域起步很早&…

C#创建圆形窗体的方法:创建特殊窗体

目录 一、涉及到的知识点 1.OnPaint方法 2.将窗体设置为透明 &#xff08;1&#xff09;Form1的BackColor SystemColors.Control &#xff08;2&#xff09; Form1的背景色是某种颜色&#xff0c;比如BackColor SystemColors.White &#xff08;3&#xff09;加载资源…

TensorRT中的INT 8 优化

INT8 中的稀疏性&#xff1a;加速的训练工作流程和NVIDIA TensorRT 最佳实践 文章目录 INT8 中的稀疏性&#xff1a;加速的训练工作流程和NVIDIA TensorRT 最佳实践结构稀疏量化在 TensorRT 中部署稀疏量化模型的工作流程案例研究&#xff1a;ResNet-34要求第 1 步&#xff1a;…

简单工厂模式大解析:让代码创造更高效、更智能!

个人主页: danci_ &#x1f525;系列专栏&#xff1a;《设计模式》《MYSQL应用》 &#x1f4aa;&#x1f3fb; 制定明确可量化的目标&#xff0c;坚持默默的做事。 &#x1f680; 转载自热榜文章&#xff1a;探索设计模式的魅力&#xff1a;简单工厂模式 简单工厂模式&#x…