import redis


# def delete_key():
#     r = redis.StrictRedis.from_url('redis://:ReDis!GmTx*0aN6@172.16.40.133:6379')
#     keys = r.keys("TS:recommend_diary_set:device_id:*")
#     sum = 0
#     print("diary")
#     print(len(keys))
#     for i in keys:
#         if r.ttl(i) == -1:
#             sum = sum +1
#             r.delete(i)
#             if sum % 1000 == 0:
#                 print(sum)
#
#     sum = 0
#     keys = r.keys("TS:recommend_tractate_set:device_id:*")
#     print("teizi")
#     print(len(keys))
#     for i in keys:
#         if r.ttl(i) == -1:
#             r.delete(i)
#             sum = sum + 1
#             if sum % 1000 == 0:
#                 print(sum)
#
#     sum = 0
#     print("qa")
#     print(len(keys))
#     keys = r.keys("TS:recommend_answer_set:device_id:*")
#     for i in keys:
#         if r.ttl(i) == -1:
#             r.delete(i)
#             sum = sum + 1
#             if sum % 1000 == 0:
#                 print(sum)

def scan_key():
    r = redis.StrictRedis.from_url('redis://:ReDis!GmTx*0aN6@172.16.40.133:6379')
    cursor = 0
    while True:
        new_cursor,keys_list = r.scan(cursor,"TS:recommend_diary_set:device_id:*",2000)
        delete_keys = []
        for i in keys_list:
            if r.ttl(i) == -1:
                delete_keys.append(i)
        if len(delete_keys) > 0:
            r.delete(*delete_keys)
            print("删除日记数量")
            print(len(delete_keys))
        # 循环一遍后结束
        if new_cursor == 0:
            break
        cursor = new_cursor

def topic_key():
    r = redis.StrictRedis.from_url('redis://:ReDis!GmTx*0aN6@172.16.40.133:6379')
    cursor = 0
    while True:
        new_cursor,keys_list = r.scan(cursor,"TS:recommend_answer_set:device_id:*",2000)

        delete_keys = []
        for i in keys_list:
            if r.ttl(i) == -1:
                delete_keys.append(i)
        if len(delete_keys) > 0:
            r.delete(*delete_keys)
            print("总数量")
            print(len(keys_list))

            print("删除帖子数量")
            print(len(delete_keys))
        # 循环一遍后结束
        if new_cursor == 0:
            break
        cursor = new_cursor

if __name__ == "__main__":
    topic_key()






















