> fd = s.makefile('w', buffering = 0) -> ValueError exception > fd = s.makefile('w') -> io.BufferedWriter, which does not send data. > fd = s.makefile('wb') -> io.TextIOWrapper, which does not send data. Have you tried fd.flush() after writing your data?