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


Posted in Python onDecember 18, 2013

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 相关文章推荐
Python多线程同步Lock、RLock、Semaphore、Event实例
Nov 21 Python
python判断一个集合是否包含了另外一个集合中所有项的方法
Jun 30 Python
python中偏函数partial用法实例分析
Jul 08 Python
Python学习笔记之解析json的方法分析
Apr 21 Python
Python多进程multiprocessing用法实例分析
Aug 18 Python
Python简单生成随机数的方法示例
Mar 31 Python
Python DataFrame设置/更改列表字段/元素类型的方法
Jun 09 Python
python计算列表内各元素的个数实例
Jun 29 Python
用python 实现在不确定行数情况下多行输入方法
Jan 28 Python
Python3+Pycharm+PyQt5环境搭建步骤图文详解
May 29 Python
浅析pandas 数据结构中的DataFrame
Oct 12 Python
ubuntu 安装pyqt5和卸载pyQt5的方法
Mar 24 Python
python2.7删除文件夹和删除文件代码实例
Dec 18 #Python
python使用xmlrpc实例讲解
Dec 17 #Python
python三元运算符实现方法
Dec 17 #Python
用python写asp详细讲解
Dec 16 #Python
python模块restful使用方法实例
Dec 10 #Python
python解析模块(ConfigParser)使用方法
Dec 10 #Python
python基础入门详解(文件输入/输出 内建类型 字典操作使用方法)
Dec 08 #Python
You might like
转PHP手册及PHP编程标准
2006/12/17 PHP
php+mysql分页代码详解
2008/03/27 PHP
php ob_flush,flush在ie中缓冲无效的解决方法
2010/05/09 PHP
PHP中使用file_get_contents抓取网页中文乱码问题解决方法
2014/12/17 PHP
php实现用已经过去多长时间的方式显示时间
2015/06/05 PHP
浅谈PHP中JSON数据操作
2015/07/01 PHP
PHP防盗链的基本思想 防盗链的设置方法
2015/09/25 PHP
php删除数组指定元素实现代码
2017/05/03 PHP
通过Unicode转义序列来加密,按你说的可以算是混淆吧
2007/05/06 Javascript
理解Javascript_11_constructor实现原理
2010/10/18 Javascript
使用Grunt.js管理你项目的应用说明
2013/04/24 Javascript
解释&amp;&amp;和||在javascript中的另类用法
2014/07/28 Javascript
drag-and-drop实现图片浏览器预览
2015/08/06 Javascript
js判断移动端是否安装某款app的多种方法
2015/12/18 Javascript
浅谈JavaScript中小数和大整数的精度丢失
2016/05/31 Javascript
EasyUI布局 高度自适应
2016/06/04 Javascript
文件上传,iframe跨域数据提交的实现
2016/11/18 Javascript
jQuery弹出div层过2秒自动消失
2016/11/29 Javascript
React.js中常用的ES6写法总结(推荐)
2017/05/09 Javascript
vue2.0实现音乐/视频播放进度条组件
2018/06/06 Javascript
微信小程序实现弹出菜单功能
2018/06/12 Javascript
详解auto-vue-file:一个自动创建vue组件的包
2019/04/26 Javascript
微信小程序页面上下滚动效果
2020/11/18 Javascript
python 获取文件列表(或是目录例表)
2009/03/25 Python
Python中3种内建数据结构:列表、元组和字典
2014/11/30 Python
Python 中 list 的各项操作技巧
2017/04/13 Python
Python中模块与包有相同名字的处理方法
2017/05/05 Python
使用pandas实现csv/excel sheet互相转换的方法
2018/12/10 Python
Python多线程:主线程等待所有子线程结束代码
2020/04/25 Python
Python闭包与装饰器原理及实例解析
2020/04/30 Python
澳大利亚设计的优质鞋类和适合澳大利亚生活方式的服装:Rivers
2019/04/23 全球购物
门卫岗位职责
2013/11/15 职场文书
小学三年级数学教学反思
2014/01/31 职场文书
创新比赛获奖感言
2014/02/13 职场文书
IDEA使用SpringAssistant插件创建SpringCloud项目
2021/06/23 Java/Android
MySQL 原理与优化之原数据锁的应用
2022/08/14 MySQL