Я пытаюсь получить изображение из HTTP-запроса post в python. Я использую BaseHTTPHolder и функцию do_POST (). Я пытаюсь получить изображение с адреса localhost http: 127.0.0.1: 8080 / photo при работе сервера на localhost. Я попытался использовать код ниже, он сохраняет фотографию, но не позволяет открыть, потому что фотография не получена полностью
img = urllib2.urlopen('http://127.0.0.1:8080/photo').read()
content_length = int(self.headers.getheader('content-length',0))
file_content = self.rfile.read(content_length)
with open('/Users/kasymhan/Desktop/sprint2/file01.jpg','wb') as s:
s.write(file_content)
EDIT
Моя функция do_POST ()
def do_POST(self):
url = 'http://127.0.0.1:8080/photo/file02.jpg'
request_headers = self.headers
content_length = request_headers.getheaders('content-length')
length = int(content_length[0]) if content_length else 0
file_content = self.rfile.read(length)
img = urllib2.urlopen(url).read()
with open('/Users/kasymhan/Desktop/sprint2/image.jpg','wb') as s:
s.write(img)