Python USES the urllib2 module to get the gravatar head instance

  • 2020-04-02 13:17:58
  • OfStack

Gravatar registration address: https://en.gravatar.com/


"""`Gravatar <https://en.gravatar.com/site/implement/>`_"""
# import code for encoding urls and generating md5 hashes
import urllib2, hashlib
# Make response slow if verify whether default avatar or not.
# So let js do it, see `/static/js/article.js`.
def gravatar_url(email, size=40, verify_default=False):
    """Construct the gravatar url."""
    gravatar_url = ''.join(['http://www.gravatar.com/avatar/',
        hashlib.md5(email.lower()).hexdigest(), '?s=%d' % size])
    # if default return None
    if (verify_default):
        gravatar_url += '&d=404'
        try:
            urllib2.urlopen(gravatar_url)
        except urllib2.URLError, e:
            return None
    return gravatar_url
if __name__ == '__main__':
    import webbrowser as wb
    for email in ['xxx@gmail.com']:
        url = gravatar_url(email)
        print(url)
        if url:
            wb.open(url)


Related articles: