On 8/26/10 4:17 PM, Navkirat Singh wrote:
Here is what I needed to do:
a) Separate image content from header content of the byte stream received from
the web browser.
b) Save the image content to disk for further use.
Here is what I did. Following is just a snippet:
#-------------HERE IS WHERE I RECEIVE THE DATA
while True:
buff = socket.recv(8192)
byteStr +=buff
if not buff: break
#--------------ENCODING/DECODING STARTS FROM HERE (since I want to use
split/partition functions to separate header content from the image content)
strMsg = byteStr.decode("ISO-8859-1")
listMsg = strMsg.split('\r\n')
#----------------------------
# do some more processing to search the list for the image content, say
supposing index is 11
#---------------------------
imageStr = listMsg[11].encode("ISO-8859-1") #Transform the byte string
just the way I found it
If your JPEG happens to contain the bytes \r\n, then this will not work. Please
follow our advice. Split using b'\r\n\r\n' and use the maxsplit=1 argument to
make sure that you do not split on spurious b'\r\n\r\n' sequences inside the
JPEG body. Do not decode the bytes.
--
Robert Kern
"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco
--
http://mail.python.org/mailman/listinfo/python-list