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

互联网招聘网站排名制作钓鱼网站教程源码

互联网招聘网站排名,制作钓鱼网站教程源码,国外网站网页设计,企业网站建设cms系统迷途小书童 读完需要 9分钟 速读仅需 3 分钟 1 环境 windows 10 64bitpython 3.8httpx 0.23.0 2 简介 之前我们介绍过使用 requests ( https://xugaoxiang.com/2020/11/28/python-module-requests/ ) 来进行 http 操作#xff0c;本篇介绍另一个功能非常类似的第三方库 httpx本篇介绍另一个功能非常类似的第三方库 httpx它提供了同步和异步的 API同时支持 HTTP/1.1 和 HTTP/2是一个全功能的 HTTP 客户端。 3     安装 使用 pip 安装执行命令 pip install httpx 在安装 python 库的同时还安装了命令行工具 httpx.exe 来看几个简单的示例 # get方法请求url httpx.exe https://github.com -m get# post方法请求url同时上传一个文本文件 httpx.exe https://domain.com -m post -f test.txt 4     基本使用 还是拿之前的 flask 后端例子来讲 from flask import Flask, jsonify, request from flask_restful import Api, Resource, reqparseUSERS [{name: zhangsan},{name: lisi},{name: wangwu},{name: zhaoliu} ]class Users(Resource):def get(self):return jsonify(USERS)def post(self):args reqparse.RequestParser() \.add_argument(name, typestr, locationjson, requiredTrue, help名字不能为空) \.parse_args()if args[name] not in USERS:USERS.append({name: args[name]})return jsonify(USERS)def delete(self):USERS []return jsonify(USERS)class UserId(Resource):def __init__(self):self.parser reqparse.RequestParser()self.parser.add_argument(name, typestr)self.parser.add_argument(age, typeint)def get(self, userid):datas self.parser.parse_args()return jsonify({name: USERS[int(userid)].get(name), age: datas.get(age)})def post(self, userid):file request.files[file]file.save(flask_file.txt)return jsonify({msg : success})app Flask(__name__) api Api(app, default_mediatypeapplication/json)api.add_resource(Users, /users) api.add_resource(UserId, /user/userid)app.run(host0.0.0.0, port5000, use_reloaderTrue, debugTrue) 启动后端服务后接着来看看客户端的请求。httpx 的基本用法和 requests 近乎相同很多时候只需要将原来的代码中的 requests 换成 httpx 就行。 import httpx# 使用get方法 r httpx.get(http://127.0.0.15000/users)# http返回码 print(r.status_code)# http头 print(r.headers[content-type]) # 也可以使用 r.headers.get(content-type)# 接口返回的json print(r.json()) import httpx import jsonparam {name: xugaoxiang} headers {Content-type: application/json}# post请求 r httpx.post(http://127.0.0.1:5000/users, datajson.dumps(param), headersheaders)print(r.status_code) print(r.json()) import httpx# delete请求 r httpx.delete(http://127.0.0.1:5000/users) print(r.json()) print(r.status_code) 除此之外像 put、head、options 方法的请求也是类似的这里就不再举例了 r httpx.put(url, data{key: value}) r httpx.head(url) r httpx.options(url) 5     高级用法 上面示例中的用法是 httpx 提供的 top-level API这在写一些测试脚本或者做系统原型时问题不大但真正要在实际项目中去用的话就会有性能上的问题。这是因为 httpx 在进行每一次的请求时都会去重新建立一个链接也就是原有的链接没有被复用这在高并发的情况就显得特别低效。 类似于 requests 模块中的 Sessionhttpx 提供了 Client它会使用 http 连接池大大减少链接重新建立的次数减少 cpu 的使用率降低了网络拥堵提升系统效率。 Client 的使用比较简单推荐的做法是将 Client 作为 context 管理器看下面的示例 import httpxwith httpx.Client() as client:# 请求部分将原来的 httpx 换成 client 就可以了参数是一样的r client.get(http://127.0.0.1:5000/users)print(r.json())print(r.status_code) 6     同步请求与异步请求 默认情况下httpx 提供的是标准同步 API如果想使用异步请求可以这样 import httpx import asyncioasync def make_async_request():async with httpx.AsyncClient() as client:r await client.get(http://127.0.0.1:5000/users)print(r.json())print(r.status_code)asyncio.run(make_async_request()) 7     http2 支持 要使能 http2我们需要额外安装库 httpx[http2] # 这个包名取的太奇怪了 pip install httpx[http2] 然后在初始化 client 的时候加上 http2 的支持 with httpx.Client(http2True) as client:r client.get(http://127.0.0.1:5000/users) 8     免费社群
http://www.hkea.cn/news/14461746/

相关文章:

  • 城乡建设部统计信息网站钓鱼网站下载安装
  • c 网站开发模板医学ppt模板下载免费
  • 株洲网站建设哪家好动漫设计属于什么大类
  • 移动网站建设价格上海网站案例
  • 如何做网站的薪酬调查网页版代码编辑器
  • 电子商务网站建设外包服务的企业制作京东网站建设
  • 专门做儿童的店铺网站网站备案号位置
  • 可视方便建站微网站建设工程公司注册条件
  • 东莞建站怎么做个人博客网站制作论文
  • 网站后台管理系统ie8用不了域名注册信息在哪里找到
  • 网站图片大小oss for wordpress
  • 网站开发与管理内容为什么不推荐免费建站
  • 章丘网站优化西安市建设工程信息网编标工具
  • 微商货源网站大全个体商户建自己的网站做销售
  • 公司网站上传文章快看漫画小程序入口
  • 旅游营销型网站建设wordpress文章作者
  • 电影网站开发与设计中国科技成就新闻
  • 做excel的网站wordpress制作app
  • 共享经济型网站开发wordpress安装
  • 手机微网站 模板高端大气的广告公司名字
  • 广州建设官方网站建设工程服务中心是做什么的
  • 宁波免费自助建站模板南昌网站建设信息
  • wild合成版是哪个网站做的章丘做网站单位哪家好
  • 鹰潭做网站的直链平台
  • 建设企业门户网站网站营销方案模板
  • 织梦网站做关键词网站建设分站要备案
  • 网站建设数据库配置网站上的信息可以做证据吗
  • 做网站代理去拉人网站建设辶首先金手指十四
  • 好吊顶网站三大电商平台是哪三个
  • 上海人才网官网招聘招聘外包seo公司