title: how to send multiple pictures to the client, and how does the client display them?
body: <p>I am running my server code which seems to be able to send pictures to the client, however it looks like that only one picture file is sent, which is totally black once is manually opened. Moreover, the client gets an error when trying to display the pictures received. </p>
  
  <p>I have tried to convert bytes back to pictures and that is the part that gives me the error.</p>
  
  <pre><code>import cv2 #SERVER
  import time
  import socket
  import glob
  import os
  host = "127.0.0.1"
  port = 5000
  
  s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
  s.bind((host, port))
  s.listen(5)
  print("server started...")
  
  path1 = (r"C:\Users\Desktop\opencvpics")
  def readFileImages():
      st = os.path.join(path1, "*.png")
      print(st)
      return glob.glob(st)
  
  list1 = readFileImages()
  print(list1, "list1......")
  print(type(list1))
  
  while True:
      c, addr = s.accept()
      print(f"connection from {addr} has been established !")
      c.send(bytes("welcome to the server".encode()))
  
      for pics in list1:
          f = open(pics, 'rb')
          l = f.read(1024)
          #while (l):
          c.send(l)
          print('Sent ', repr(l))
          #l = f.read(1024)
          f.close()
          print(pics, "sdfasdfsadadfsafsas")
          print(type(f),type(l))
  
      print('Done sending')
      c.send('Thank you for connecting'.encode())
  </code></pre>
  
  <pre><code>import socket #CLIENT
  from typing import Optional, Any
  import cv2
  from PIL import Image
  import io
  import pickle
  host =  "127.0.0.1"
  port = 5000
  
  s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  s.connect((host, port))
  s.send('Hello server!'.encode())
  
  with open('received_file.png', 'wb') as f:
      print('file is open')
      print('receiving data...')
      data = s.recv(1024)
      print('data=%s', data)
      f.write(data)
      print('Successfully get the files')
      print('connection closed')
      print(type(data))
      print(len(data))
      image = Image.open(io.BytesIO(data))
      image.show()
  s.close()
  </code></pre>
  
  <p>here is the error coming from the client, but please note that I had to shrink the code here in order to match the layout, so line 35 in this error message might correspond to another line.</p>
  
  <pre><code>Traceback (most recent call last):
    File "C:/Users/PycharmProjects/client-server/client.py", line 35, in &lt;module&gt;
      image = Image.open(io.BytesIO(data))
    File "C:\Users\PycharmProjects\client-server\venv\lib\site-packages\PIL\Image.py", line 2818, in open
      raise IOError("cannot identify image file %r" % (filename if filename else fp))
  OSError: cannot identify image file &lt;_io.BytesIO object at 0x07D02330&gt;
  </code></pre>