title: Curl and Python Requests (get) reporting different http status code
body: <p>I have written a python script to validate url connectivity from a host.  What is reporting successful (http 200) in linux <code>curl</code> is reported as a 403 in the python (3.6) <code>requests</code> module.</p>
  
  <p>I'm hoping someone can help me understand the differences here in reported http status codes?  </p>
  
  <p>Curl from the Linux command line....</p>
  
  <pre><code>$ curl -ILs https://www.h2o.ai|egrep ^HTTP
  HTTP/1.1 200 OK
  </code></pre>
  
  <p>Python requests module.....</p>
  
  <pre><code>&gt;&gt;&gt; import requests
  &gt;&gt;&gt; url = 'https://www.h2o.ai'
  &gt;&gt;&gt; r = requests.get(url, verify=True, timeout=3)
  &gt;&gt;&gt; r.status_code
  403
  &gt;&gt;&gt; requests.packages.urllib3.disable_warnings()
  &gt;&gt;&gt; r = requests.get(url, verify=False, timeout=3)
  &gt;&gt;&gt; r.status_code
  403
  </code></pre>