request.put命令的python urllib替代方案?

时间:2018-02-22 14:39:54

标签: python http python-requests urllib

我想通过urllib python 3.6库发送图像数据。 我目前在请求库的帮助下实现了python 2.7。

我可以使用此代码中的urllib替换请求lib。

import argparse
import io
import os
import sys
import base64
import requests


def read_file_bytestream(image_path):
    data = open(image_path, 'rb').read()
    return data


if __name__== "__main__":
    data=read_file_bytestream("testimg.png")
    requests.put("http.//0.0.0.0:8080", files={'image': data})

1 个答案:

答案 0 :(得分:2)

这是一种方法,几乎​​取自文档:

import urllib.request

def read_file_bytestream(image_path):
    data = open(image_path, 'rb').read()
    return data

DATA = read_file_bytestream("file.jpg")
req = urllib.request.Request(url='http://httpbin.org/put', data=DATA, method='PUT')
with urllib.request.urlopen(req) as f:
    pass
print(f.status)
print(f.reason)