title: Test if an internet connection is present in python
body: <p>I have the following code that checks if an internet connection is present.</p>
  
  <pre><code>import urllib2
  
  def internet_on():
      try:
          response=urllib2.urlopen('http://74.125.228.100',timeout=20)
          return True
      except urllib2.URLError as err: pass
      return False
  </code></pre>
  
  <p>This will test for an internet connection, but how effective is it?</p>
  
  <p>I know internet varies in quality from person to person, so I'm looking for something that is most effective for the broad spectrum, and the above code seems like there might be loopholes where people could find bugs. For instance if someone just had a really slow connection, and took longer than 20 seconds to respond.</p>