python操作redis

来源:互联网 发布:淘宝新势力周怎么报名 编辑:程序博客网 时间:2024/05/28 15:48
# -*- coding: utf-8 -*-  
'''
根据用户id键从redis数据库(库11)中取一些字段,如果redis中没有,
则通过接口取得数据,并把数据保存在redis中
'''
import redis
import urllib, urllib2
r = redis.StrictRedis(host = '192.168.141.150', port = 6379 , db = 11)
   
    
def getUserInfo(user_id):
     a = ()
     #根据id 获取属性及其值,并保存在a元祖中
     a = r.hgetall("U_" + str(user_id))
     print a
     #如果不为null,则返回元祖中的属性及值
     if a! = "":
          return a
     else:
          getUserInfoViaHttp(user_id)
#定义一个方法,用来根据id键,调用接口,返回属性及其值,
#并把其保存在redis中作为缓存数据。

def getUserInfoViaHttp(user_id):
     url = 'http://10.21.3.89'
     params = {}
     params['clientID'] = 'yiban.cn'
     params['passwd'] = '7622f0d078cf468395336320c3cf35a1'
     params['module'] = 'school'
     params['func'] = 'getStudentInfoByUserId'
     params['args'] = '[1]'
     
     params = urllib.urlencode(params)
     ret = urllib.urlopen(url, params)
     code = ret.getcode()
     ret_data = ret.read()
     print ret_data
     #c= r.set('info', ret_data)
     #print c
     #return c
def main():
    getUserInfo(3)
       
0 0
原创粉丝点击