python使用urllib2模块获取gravatar头像实例

yipeiwu_com5年前Python基础

Gravatar注册地址: 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)

相关文章

基于Python实现的扫雷游戏实例代码

本文实例借鉴mvc模式,核心数据为model,维护1个矩阵,0表无雷,1表雷,-1表已经检测过。 本例使用python的tkinter做gui,由于没考虑可用性问题,因此UI比较难看,p...

mac下pycharm设置python版本的图文教程

mac下pycharm设置python版本的图文教程

安装了pycharm 5.0.1,创建了测试项目,发现python的版本是2.6.9的,系统自带的版本好像是2.7的,为什么这样,怎么切换到2.7 看了一下系统到底装了些什么版本 居...

Python 可爱的大小写

函数较简单,看下面的例子: 复制代码 代码如下:s = 'hEllo pYthon' print s.upper() print s.lower() print s.capitalize...

Pycharm 操作Django Model的简单运用方法

Pycharm 操作Django Model的简单运用方法

Django中的Models 是什么? 通常一个Model对应数据库的一张数据表, Django中Models以类似的形式表现, 它包含了一些基本字段以及数据的一些行为 在Dja...

全面了解django的缓存机制及使用方法

全面了解django的缓存机制及使用方法

一、缓存目的 1、减小过载 2、避免重复计算 3、提高系统性能 二、如何进行缓存 三、缓存类型 四、缓存粒度分类 五、缓存的设置与使用 示例一: CACHES = {  ...