Python - HTTP请求

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/boyun58/article/details/85044637

http或超文本传输​​协议适用于客户端服务器模型。通常,Web浏览器是客户端,托管该网站的计算机是服务器。在python中,我们使用requests模块来创建http请求。它是一个非常强大的模块,可以处理简单请求和响应数据之外的http通信的许多方面。它可以处理身份验证,压缩/解压缩,分块请求等。

HTTP客户端以请求消息的形式向服务器发送HTTP请求,其中包括以下格式:

  • 请求行
  • 零个或多个标题(General | Request | Entity)字段后跟CRLF
  • 空行(即CRLF前面没有任何内容的行),表示标题字段的结尾
  • 可选的消息体

请求方法
请求方法指示对由给定Request-URI标识的资源执行的方法。该方法区分大小写,应始终以大写形式提及。下表列出了HTTP / 1.1中支持的所有方法。

SN 方法和描述
GET 方法用于使用给定的URI从给定服务器检索信息。使用GET的请求应仅检索数据,并且不应对数据产生其他影响。
HEAD 与GET相同,但它仅传输状态行和标题部分。
POST 请求用于使用HTML表单向服务器发送数据,例如客户信息,文件上传等。
PUT 用上传的内容替换目标资源的所有当前表示。
DELETE 删除URI给出的目标资源的所有当前表示。
CONNECT 建立到给定URI标识的服务器的隧道。
OPTIONS 描述目标资源的通信选项。
TRACE 执行消息循环测试以及目标资源的路径。

请求URI
Request-URI是统一资源标识符,用于标识应用请求的资源。以下是指定URI的最常用表单:

Request-URI = "*" | absoluteURI | abs_path | authority
SN 方法和描述
1 当HTTP请求不适用于特定资源但使用服务器本身时,将使用星号*,并且仅当使用的方法不一定适用于资源时才允许使用星号*。例如: OPTIONS * HTTP/1.1
2 Request-URI的最常见形式是用于标识源服务器或网关上的资源。例如,希望直接从源服务器检索资源的客户端将创建到主机“www.w3.org”的端口80的TCP连接,并发送以下行:GET http://www.w3.org/pub/WWW/TheProject.html HTTP/1.1
3 Request-URI的最常见形式是用于标识源服务器或网关上的资源。例如,希望直接从源服务器检索资源的客户端将创建到主机“www.w3.org”的端口80的TCP连接,并发送以下行:GET /pub/WWW/TheProject.html HTTP/1.1; Host: www.w3.org

注意绝对路径不能为空; 如果原始URI中不存在,则必须以“/”(服务器根目录)给出。

使用Python模块requests请求

  • 安装
    pip install requests

import requests
r = requests.get('https://map.baidu.com/')
print(r.text)

猜你喜欢

转载自blog.csdn.net/boyun58/article/details/85044637
今日推荐