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

yipeiwu_com7年前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中assert、isinstance的用法详解

1. assert 函数说明: Assert statements are a convenient way to insert debugging assertions into a...

python 统计一个列表当中的每一个元素出现了多少次的方法

如下所示: #coding=utf-8 #方式一 print('*'*20 + '方式一' + '*'*20) li1 = [1,2,2,3,3,3,4,4,4,4,5,5,5,5,...

python随机取list中的元素方法

python随机取list中的元素方法

随机取 list 中的元素 random.sample import random a = [1, 2, 3, 4, 5, 6, 7, 8, 9] b = random.sample...

Python格式化css文件的方法

本文实例讲述了Python格式化css文件的方法。分享给大家供大家参考。具体实现方法如下: import string, sys import re, StringIO TAB=4...

Python实现多态、协议和鸭子类型的代码详解

多态 问起面向对象的三大特性,几乎每个人都能对答如流:封装、继承、多态。今天我们就要来说一说 Python 中的多态。 所谓多态:就是指一个类实例的相同方法在不同情形有不同表现形式。多态...