title: python dictionary key error cannot resolve
body: <p>I am performing status check across a huge list of links and my snippet is as follows:</p>
  
  <pre><code>link = 'http://xyz'
  proxyDict = { "http" : "ip:80", "https" : "https://ip:443"}
  r = requests.get(link, allow_redirects=False, verify=False)
  http_status = r.status_code
  print (r.headers)
  
  # check the status and react accordingly
  
  if http_status == 200 and r.headers['content-length'] == "0":
     print ('Link Alive - NO content'+';'+str(http_status)+';'+link, file = log)
  elif http_status == 200 and "text/html" in r.headers['content-type']:
     print ('External- direct HTML link'+';'+str(http_status)+';'+link, file = log)  
  elif http_status == 200 and "application" in r.headers['content-type']:
     print ('External- direct HTML link'+';'+str(http_status)+';'+link, file = log)
  </code></pre>
  
  <p>When I execute the code I get the following error:</p>
  
  <pre><code>    return self._store[key.lower()][1]
      KeyError: 'content-length'
  </code></pre>
  
  <p>The header output is as follows:</p>
  
  <pre><code>CaseInsensitiveDict({'status': '200', path=/; HttpOnly, shpuvid=rBBcnFJUTliSHV+hA5lLAg==; expires=Thu, 08-Oct-15 18:26:32 GMT;'connection': 'keep-alive', 'cache-control': 'max-age=0, private, must-revalidate', 'date': 'Tue, 08 Oct 2013 18:26:32 GMT', 'content-type': 'text/html; charset=utf-8', 'x-rack-cache': 'miss'})
  </code></pre>
  
  <p>I know that the error exists because the <code>header output</code> has no key "content-length", but when <code>if condition</code> does not satisfy it has to jump to next <code>elif</code> condition which does not happen, rather stops the code execution throwing the above error.</p>
  
  <p>Any suggestions? Might be a silly question but a good thing for a beginner to learn.</p>