[code.view]

[top] / python / PyMOTW / socket / socket_binary_server.py

     #!/usr/bin/env python
     # encoding: utf-8
     #
     # Copyright (c) 2010 Doug Hellmann.  All rights reserved.
     #
     """Receive and unpack binary data
     """
     #end_pymotw_header
     
     import binascii
     import socket
     import struct
     import sys
     
     # Create a TCP/IP socket
     sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
     server_address = ('localhost', 10000)
     sock.bind(server_address)
     sock.listen(1)
     
     unpacker = struct.Struct('I 2s f')
     
     while True:
         print >>sys.stderr, '\nwaiting for a connection'
         connection, client_address = sock.accept()
         try:
             data = connection.recv(unpacker.size)
             print >>sys.stderr, 'received "%s"' % binascii.hexlify(data)
     
             unpacked_data = unpacker.unpack(data)
             print >>sys.stderr, 'unpacked:', unpacked_data
             
         finally:
             connection.close()
     

[top] / python / PyMOTW / socket / socket_binary_server.py

contact | logmethods.com