Redis.py 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. # -*- coding: utf-8 -*-
  2. __author__ = 'wanger'
  3. __date__ = '2024-08-20'
  4. __copyright__ = '(C) 2024 by siwei'
  5. __revision__ = '1.0'
  6. import time
  7. from typing import Optional
  8. import os
  9. import uuid
  10. import redis
  11. import socket
  12. import siwei_config
  13. class Redis:
  14. redis_client = None
  15. expire = 60 * 30 # 默认时长 单位s
  16. hostname = socket.gethostname()
  17. ipaddress = socket.gethostbyname(hostname)
  18. # 全局参数修改
  19. redis_config = siwei_config.CONFIG['redis']
  20. def __init__(
  21. self,
  22. host: Optional[str] = redis_config['host'],
  23. port: Optional[int] = redis_config['port'],
  24. db: Optional[int] = redis_config['db'],
  25. ):
  26. self.redis_client = redis.Redis(host=host, port=port, db=db)
  27. def set(self, key, value, expire=60 * 30):
  28. self.redis_client.set(key, value, expire)
  29. def get(self, key):
  30. return self.redis_client.get(key)
  31. def close(self):
  32. self.redis_client.close()
  33. def setUsername(self, value, expire=60 * 30):
  34. self.redis_client.set(self.ipaddress, value, expire)
  35. def getUsername(self):
  36. self.redis_client.get(self.ipaddress)
  37. def get_ip_address(self):
  38. try:
  39. # 获取本地主机名
  40. hostname = socket.gethostname()
  41. # 获取本地IP
  42. ip_address = socket.gethostbyname(hostname)
  43. return ip_address
  44. except socket.error as e:
  45. print(f"Unable to get IP Address: {e}")