Python3模拟curl发送post请求操作示例

yipeiwu_com5年前Python基础

本文实例讲述了Python3模拟curl发送post请求操作。分享给大家供大家参考,具体如下:

后端给的接口样式:

curl "http://65.33.44.43:509/pre/update" -H "Content-Type: text/json" -d '{"TYPE":"PRE-FILTER_UPDATE", "DATA":[{"SN":"1E3006CEBFE00", "MODEL":"HG0PG"}]}' -0 -v

python模拟实现:

最开始相同requests直接post请求算了,实时证明它并不行,然后换了一种方法才可以

import http.client,
import json
  def selectAuth(self,sn,dev_model):
    try:
      params = json.dumps({"TYPE": "PRE-FILTER_UPDATE",
           "DATA": [{"SN": str(sn.upper()), "MODEL": str(dev_model)}]})
      log.debug(params)
      headers = {"Content-type": "text/json", "Accept": "text/plain"}
      conn = http.client.HTTPConnection("65.33.44.43:509", 509)
      conn.request('POST', '/pre/update', params, headers)
      response = conn.getresponse()
      code = response.status
      reason=response.reason
      log.debug(code)
      log.debug(reason)
      data = json.loads(response.read().decode('utf-8'))
      conn.close()
    except Exception as e:
      data = e
      log.error(e)
    log.debug('data:{},{}'.format(data,type(data)))
    return data

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

实例详解Python装饰器与闭包

闭包是Python装饰器的基础。要理解闭包,先要了解Python中的变量作用域规则。 变量作用域规则 首先,在函数中是能访问全局变量的: >>> a = 'glob...

python读写LMDB文件的方法

python读写LMDB文件的方法

LMDB的全称是Lightning Memory-Mapped Database(快如闪电的内存映射数据库),它的文件结构简单,包含一个数据文件和一个锁文件: LMDB文件可以同时由多...

微信跳一跳辅助python代码实现

微信跳一跳辅助的python具体实现代码,供大家参考,具体内容如下 这是一个 2.5D 插画风格的益智游戏,玩家可以通过按压屏幕时间的长短来控制这个「小人」跳跃的距离。可能刚开始上手的时...

安装docker-compose的两种最简方法

这里简单介绍下两种安装docker-compose的方式,第一种方式相对简单,但是由于网络问题,常常安装不上,并且经常会断开,第二种方式略微麻烦,但是安装过程比较稳定 方法一: #...

django的登录注册系统的示例代码

django的登录注册系统的示例代码

摘要 django框架本身自带有登录注册,也可以自己写登录注册,下面将介绍这这2种方式实登录注册 一、自己写登录注册登出 1.注册regist 注册采用的是form表单,提交到数据库,在...