title: How to catch FTP errors? e.g., socket.error: [Errno 10060]
body: <p>I'm using the ftplib module to upload files:</p>
  
  <pre><code>    files = [ a.txt , b.txt , c.txt ]
  
      s = ftplib.FTP(ftp_server , ftp_user , ftp_pw) # Connect to FTP
      for i in range(len(files)):
              f = open(files[i], 'rb')
              stor = 'stor ' + files[i]
              s.storbinary(stor, f)
              f.close() # close file
      s.quit() # close ftp
  </code></pre>
  
  <p>How do I catch the following error?</p>
  
  <pre><code>socket.error: [Errno 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond
  </code></pre>
  
  <p>And what other errors are common when using the FTP module that I should also catch?</p>
  
  <p>Thanks for any help or pointers.</p>