# coding:utf-8 import time import redis class RedisString(object): def __init__(self, config): self.config = config self.r = self.connect() def connect(self): while True: try: self.r = redis.StrictRedis(host=self.config.get("host"), port=self.config.get("port"), password=self.config.get('pwd'), db=self.config.get('db',1), decode_responses=True) break except Exception as e: print('redis_error',e) time.sleep(20) return self.r def string_set(self, k,v,ex=None): """ set -- 设置值 设置超时间""" rest = self.r.set(k, v, ex=ex) return rest def update(self, key, v,ex=None): if not self.r.exists(key): rest = self.r.set(key, v,ex=ex) return rest else: return 'exists' def string_get(self, check_data): """ get -- 获取值 """ try: rest = self.r.get(check_data) except Exception as e: print(e) rest = None return rest def string_mset(self): """ mset -- 设置多个键值对 """ d = { 'user3': 'Bob', 'user4': 'Bobx' } rest = self.r.mset(d) print(rest) return rest def string_mget(self): """ mget -- 获取多个键值对 """ ls = ['user3', 'user4'] rest = self.r.mget(ls) print(rest) return rest def exists(self,key): if self.r.exists(key): return True return False def string_del(self,key): """ del """ rest = self.r.delete(key) return rest def add_string_to_set(self,key, string): # 判断字符串是否存在于集合中 if not self.r.sismember(key, string): # 将字符串添加到集合中 rest = self.r.sadd(key, string) return True else: return False # 定义一个函数来删除不以 "jycode_" 开头的键 if __name__ == '__main__': configs = {'host':'192.168.3.109','port':'6379','pwd':'root','db':1} r = RedisString(configs) import json mysql_path = { # 'mysql_host': '172.17.4.242', 'mysql_host': '192.168.3.14', # 'mysql_host': '127.0.0.1', # 'mysql_user': 'liukangjia', 'mysql_user': 'root', # 'mysql_password': 'Lkj#20230630N', 'mysql_password': '=PDT49#80Z!RVv52_z', # 'mysql_password': '123456', # 'mysql_db': 'Call_Accounting', 'mysql_db': 'lkj', 'mysql_port': '4000', # 'mysql_port': '3306' } # with open('../data/code_to_name.json', 'r', encoding='utf-8') as f: # name_maps = json.load(f) # print(r.update('jycode_C23120301','sss',ex=30)) # cursor = '0' # while True: # cursor, keys = r.r.scan(cursor=cursor) # for key in keys: # if not key.startswith('jycode_'): # r.r.delete(key) # if cursor == '0': # break print(r.string_get('jycode_C210407',)) # exit() # for k,v in name_maps.items(): # print(k,v) # r.string_set('jycode_'+k,v) # from mysql_helper import MysqlConn # m = MysqlConn(mysql_path) # max_id = 0 # import pandas as pd # df = pd.read_csv('../gpa.csv',names=['a','b']) # # print(df.head()) # # print(len(df)) # # print(df.isna().sum().sum()) # # with open('../标题高频主干词.csv','r',encoding='utf-8') as f: # # data = f.readlines() # # for i in data: # # print(i) # for i in df.values: # # print(i) # # print(i[0]) # if r.exists(i[0]): # continue # if type(i[0]) != str: # continue # with open('high_words2.csv','a',encoding='utf-8') as f: # f.write(i[0]+'\n') # r.string_set(i[0],'',14 * 24 * 60 * 60) # while True: # m.cursor.execute(f'select * from zc_topic where id >{max_id} limit 1000') # data = m.cursor.fetchall() # if len(data) == 0: # break # for row in data: # print(row) # max_id = row[0] # v = {'code':row[2], 'root': row[4],'source':0.99, 'mode': 'mode1'} # v = json.dumps(v,ensure_ascii=False) # r.string_set(row[1],v,300) # exit() # print(r.string_get('10M纯铜电话线(带水晶头)')) # r.string_set('10M纯铜电话线(带水晶头)','') # r.string_set('lk',11) # print(r.string_get('lk')) # print(res.string_del('德州市环境保护科学研究所有限公司')) # res.string_del('lkj')