def search_key(self, param): """ 查询黑名单 通过content :return: """ try: if not param: return False """从redis读取字段""" result = BusinessUtil.get_redis_by_key(param) if result: return result """从数据库内查询""" _db = MySqlHelper() result = _db.fetch_all(black_roll_call_sql.search_key) """未查到数据""" if not result: return False black_dict = {} """循环遍历数据""" for item in result: if not item: continue """生成分组""" item_key = BusinessUtil.get_verify_key(item.get("content")) if not item_key: continue if item_key in black_dict: black_dict[item_key].append(item.get("content")) else: black_dict.setdefault(item_key, []) black_dict[item_key].append(item.get("content")) """存入redis""" result_str = None for key in list(black_dict.keys()): item = black_dict[key] item_list = list(set(item)) item_str = ",".join(item_list) if key == param: result_str = item_str BusinessUtil.set_redis_reset_time_ex(key, item_str) return result_str except Exception as e: self.logger.error("【查询黑名单】查询异常信息为:%s" % traceback.format_exc()) return False
def verify_email_is_in_black_roll_call(self, email): """ 校验是否在黑名单内 :param email: :return: """ """获取redis key值""" redis_key = BusinessUtil.get_verify_key(email) """如果未获取到值""" if not redis_key: return False """通过key值查询redis""" redis_verify_email_value = BlackRollCallService().search_key(redis_key) """未找到值""" if not redis_verify_email_value: return False """从黑名单内查到字段""" if redis_verify_email_value.find(email) > -1: return True return False