import urllib.request, urllib.error, urllib.parse
data = 'test data'
req = urllib.request.Request('http://localhost:8888', data)
req.add_header('Content-Length', '%d' % len(data))
req.add_header('Content-Type', 'application/octet-stream')
res = urllib.request.urlopen(req)
Двоичные данные Python POST