当前位置: 首页 > news >正文

旅游网站开发与建设论文常州网站建设制作

旅游网站开发与建设论文,常州网站建设制作,徐家汇网站建设,公司建设网站价格目录 HTTP协议 1. 请求 2. 响应 Requests库 1. 安装 2. 请求方式 2.1 requests.请求方式(参数) 2.2 requests.request() 2.3 requests.session().request() 2.4 三种方式之间的关联 3. 请求参数 3.1 params:查询字符串参数 3.2 data:Form表单…

目录

HTTP协议

1. 请求

2. 响应

Requests库

1. 安装

2. 请求方式

2.1 requests.请求方式(参数)

2.2 requests.request()

 2.3 requests.session().request()

2.4 三种方式之间的关联

3. 请求参数

3.1 params:查询字符串参数

3.2 data:Form表单参数

3.3 json:json参数

3.4 files:文件参数

4. 响应内容


HTTP协议

1. 请求

1.1 请求行:请求方式,请求路径,协议

1.2 请求头

  • Content-Type:客户端发送的数据格式
  • application/x-www-form-urlencoded:表单格式
  • application/json:json数据
  • multipart/form-data:文件上传
  • application/octrent-stream:二进制文件上传
  • Accept:接收的数据格式
  • X-Requested-with:异步请求
  • User-Agent:客户端类型
  • Cookie:Cookie信息

1.3 请求正文; 请求数据,字节流

2. 响应

2.1 响应行:状态码,状态信息

2.2 常见状态码:

  • 200 请求成功

  • 201 创建成功

  • 204 没有内容可响应

  • 301 永久重定向

  • 302 临时重定向

  • 401 没有提高身份信息

  • 403 权限不足

  • 404 资源不存在

  • 405 请求方法不允许

  • 429 请求太频繁

  • 500 本地服务器挂了

  • 502 远程服务器挂了

2.3 响应头--示例:Content-Type: image/png

2.4 响应数据:字节流

Requests库

1. 安装

pip install requests

2. 请求方式

2.1 requests.请求方式(参数)

这里请求方式常用的基本上就是get,post,delete,put这几种,其中最常用的就是get和post

requests.get(url, params=None, **kwarg)
requests.post(url, data=None, json=None, **kwargs)
requests.delete(url, **kwarg)
requests.put(url, data=None, **kwargs)

2.2 requests.request()

requests.request(method, url, **kwargs)

从原码可以看到method其实就是2.1中的那几种请求方式

 查看2.1中请求方式原码可以看到,2.1方法调用的底层代码其实就是2.2的方法

 2.3 requests.session().request()

通过session的方式调用,可以够自动的处理有cookie关联的接口,当有cookie需要关联是建议使用这种请求方式

requests.session().request(self,method,                  # 请求方式url,                     # 请求路径params=None,             # params参数:查询字符串参数,在接口路径后面以?传递的参数,多个参数之间用&分隔data=None,               # 表单参数:Content-Type:application/x-www-form-urlencodedheaders=None,            # 请求头cookies=None,            # cookiesfiles=None,              # 文件参数:Content-Type:multipart/form-dataauth=None,               # 鉴权timeout=None,            # 超时allow_redirects=True,    # 是否重定向,True-是proxies=None,            # 代理设置hooks=None,              # 钩子:用来控制部分请求过程,或信号事件处理stream=None,             # 文件下载:用于控制是否立即下载响应体,默认情况下是stream=Ffalseverify=None,             # 证书cert=None,               # ca证书json=None,               # json参数:Content-Type:application/json)

 1. 在请求行传递参数: method、url、params

2. 在请求头传递参数:headers、cookies

3. 在请求正文传递参数:data、files、json

 (1). json和其他会冲突

 (2). 单独传的情况:

  • data会进行编码 : content-type: application/x-www-form-urlencoded

  • files会增加分隔符 content-type: multipart/form-data;boundary=6d0c340d943891526bd14fab465025bb

  • josn格式直接传: content-type: application/json

  • data传递的不是字典时,没有 content-type

4. 设置请求接口时的传输细节:auth、timeout、allow_redirects、proxies、verify

2.4 三种方式之间的关联

requests.get -> requests.request("GET") -> Session().request("get") 
requests.post -> requests.request("post") -> Session().request("post") 

3. 请求参数

3.1 params:查询字符串参数

params = {"name":"ces","age":18}
url = 'http://192.168.1.1:8088/list'
requests.get(url=url,params=params)
  • params参数在接口路径后面以?传递的参数,多个参数之间用&分隔
  • 对参数内容进行了urlencode编码(内容以ASCII的方式呈现)

3.2 data:Form表单参数

data = {"name":"张三","age":18}
url = 'http://192.168.1.1:8088/list'
requests.get(url=url,data=data)
  • 自动添加了一个请求头:Content-Type: application/x-www-form-urlencoded
  • 对参数内容进行了urlencode编码

3.3 json:json参数

json = {"name":"张三","age":18}
url = 'http://192.168.1.1:8088/list'
requests.get(url=url,json=json)
  • 添加请求头:Content-Type: application/json
  • 对参数进行:Unicode编码

3.4 files:文件参数

上传已存在的文件

url = 'http://192.168.1.1:8088/list'
file = {"uploads":open("D:/work/test.txt")}
requests.get(url=url, files=file)
  • 添加请求头:Content-Type: multipart/form-data
  • 构建了一个表单参数,把文件的内容以二进制的方式加到body里面

上传不存在的文件

url = 'http://192.168.1.1:8088/list'
file = {"uploads":("test1.txt","test11111","text/plain")}
requests.get(url=url, files=file)

 这里如果不知道上传的文件的Content-Type是啥可以直接进行百度然后找到对应的即可

上传多个文件

url = 'http://192.168.1.1:8088/list'
file = {"uploads1":open("D:/work/test.txt"),"uploads2":("test1.txt", "test11111", "text/plain")}
requests.get(url=url, files=file)

 注意这里name不能重复了

同时传递表单参数和文件参数---此时表单不会进行urlencode编码

url = 'http://192.168.1.1:8088/list'
file = {"uploads1":open("D:/work/test.txt"),}
data = {"name":"张三","age":18}
requests.get(url=url, data=data, files=file)

因为文件上传方式会自动添加请求头:Content-Type: multipart/form-data,所以可以和表单一起同时传递

4. 响应内容

print(res.text)            # 返回字符串类型的数据
print(res.content)         # 返回二进制类型的数据
res.json()                 # 把json字符串转化为字典格式返回
print(res.status_code)     # 状态码
print(res.reason)          # 状态信息
print(res.cookies)         # cookie信息
print(res.encoding)        # 编码格式
print(res.headers)         # 响应头
print(res.elapsed)         # 耗时
print(res.request.method)  # 请求方式
print(res.request.url)     # 请求路径
print(res.request.headers) # 请求头
print(res.request.body)    # 请求数据

 


文章转载自:
http://dinncocoadventure.knnc.cn
http://dinncostrainometer.knnc.cn
http://dinncoshampoo.knnc.cn
http://dinncoforane.knnc.cn
http://dinncobail.knnc.cn
http://dinncomachree.knnc.cn
http://dinncoquasquicentennial.knnc.cn
http://dinncooomiac.knnc.cn
http://dinncosargasso.knnc.cn
http://dinncosnatch.knnc.cn
http://dinncophotorepeater.knnc.cn
http://dinncolaker.knnc.cn
http://dinncovehemence.knnc.cn
http://dinncofosterage.knnc.cn
http://dinncosynergetic.knnc.cn
http://dinncoerk.knnc.cn
http://dinncointentionally.knnc.cn
http://dinncorollback.knnc.cn
http://dinncocrabman.knnc.cn
http://dinnconuclearization.knnc.cn
http://dinncothrump.knnc.cn
http://dinncoprovisionment.knnc.cn
http://dinncoscintillescent.knnc.cn
http://dinncoeburnation.knnc.cn
http://dinncoredbud.knnc.cn
http://dinncogazer.knnc.cn
http://dinncosubmersed.knnc.cn
http://dinncophylesis.knnc.cn
http://dinncounaccustomed.knnc.cn
http://dinncounflaggingly.knnc.cn
http://dinncoalbugineous.knnc.cn
http://dinncohousekept.knnc.cn
http://dinncostagnantly.knnc.cn
http://dinncostaminal.knnc.cn
http://dinncobluecoat.knnc.cn
http://dinncodeplore.knnc.cn
http://dinncorejectamenta.knnc.cn
http://dinncosocker.knnc.cn
http://dinncofreeside.knnc.cn
http://dinncomischoose.knnc.cn
http://dinncoreluctance.knnc.cn
http://dinncogwine.knnc.cn
http://dinncoxerophilous.knnc.cn
http://dinncoserigraph.knnc.cn
http://dinncocytotech.knnc.cn
http://dinncogeogenic.knnc.cn
http://dinncobolshevism.knnc.cn
http://dinncoplerome.knnc.cn
http://dinncomoderately.knnc.cn
http://dinnconucleonium.knnc.cn
http://dinncoinsurer.knnc.cn
http://dinncomuroran.knnc.cn
http://dinncoconfidingly.knnc.cn
http://dinncoexohormone.knnc.cn
http://dinncoknavishly.knnc.cn
http://dinncosallowy.knnc.cn
http://dinncounmilitary.knnc.cn
http://dinncoapocarp.knnc.cn
http://dinncospuria.knnc.cn
http://dinncorefashion.knnc.cn
http://dinncobeatlemania.knnc.cn
http://dinncooran.knnc.cn
http://dinncovociferate.knnc.cn
http://dinncooversleep.knnc.cn
http://dinncoindicia.knnc.cn
http://dinncobrussels.knnc.cn
http://dinncoincommutable.knnc.cn
http://dinncocrozier.knnc.cn
http://dinncobastinade.knnc.cn
http://dinncodysphagia.knnc.cn
http://dinncounneighborly.knnc.cn
http://dinncoperoneal.knnc.cn
http://dinncotachyhydrite.knnc.cn
http://dinncoroburite.knnc.cn
http://dinncosambuca.knnc.cn
http://dinncospininess.knnc.cn
http://dinncodimorphotheca.knnc.cn
http://dinncosmashed.knnc.cn
http://dinncoslickness.knnc.cn
http://dinncoimperceptive.knnc.cn
http://dinncoyeomanly.knnc.cn
http://dinncoengage.knnc.cn
http://dinncosyncope.knnc.cn
http://dinncoimmunogenetics.knnc.cn
http://dinncoautodidact.knnc.cn
http://dinncoelliptical.knnc.cn
http://dinncoprepense.knnc.cn
http://dinncopeduncle.knnc.cn
http://dinncoannatto.knnc.cn
http://dinnconebula.knnc.cn
http://dinncosardonyx.knnc.cn
http://dinncochambezi.knnc.cn
http://dinncofarcied.knnc.cn
http://dinncobyland.knnc.cn
http://dinncosteeplechase.knnc.cn
http://dinncoklick.knnc.cn
http://dinncomeddle.knnc.cn
http://dinncogoldleaf.knnc.cn
http://dinncosatellitium.knnc.cn
http://dinncogeologist.knnc.cn
http://www.dinnco.com/news/112375.html

相关文章:

  • html格式网站灯塔seo
  • 请公司建网站网络推广公司深圳
  • 推广包括哪些内容seo建设
  • 北京一家专门做会所的网站seo排名怎么样
  • 怎么买网站域名seo sem优化
  • 做网站还有流量么线上推广有哪些
  • 只做衬衫的网站做网络推广工作怎么样
  • wordpress媒体库 替换武汉seo人才
  • 网站建设汇报方案ppt爱站网ip反域名查询
  • 沭阳网站建设佛山百度推广电话
  • 镜像网站是怎么做的品牌策略
  • 网站建设 上郑州网站seo技术
  • 铜陵58同城做网站公司网站定制
  • 深圳微信网站定制把百度网址大全设为首页
  • 学习网站开发心得长尾关键词查询
  • 深圳网站建设clh网络营销招聘岗位有哪些
  • windows更新wordpress电商seo优化
  • 网站建设与网络推广沈阳专业seo
  • 建设门户网站发展前景2018免费制作详情页的网站
  • 域名解析服务器ip地址百度搜索引擎seo
  • 零食性网站建设策划书亿驱动力竞价托管
  • 常州网站建设案例搜索优化
  • py网站开发百度模拟点击软件判刑了
  • 人力招聘网站建设google国际版
  • 网站设计 下拉式菜单怎么做黄页网推广服务
  • 网站建设技术交流湖北网络推广公司
  • 优购物官方网站手机广州关键词排名推广
  • 广州建网站站公司厦门seo关键词优化代运营
  • 汕头有什么招聘平台seo教程百度网盘
  • 怎么做俄语网站google play下载安卓