wjtx/tools/redis_tools/fetch_data.py
2020-03-25 10:37:32 +08:00

43 lines
901 B
Python

# -*- coding: utf-8 -*-
#!/usr/bin/python
import os
import sys
import time
import json
import redis
import pymysql
import datetime
import pprint
from string import Template
argv = sys.argv
host = argv[1]
port = argv[2]
keys = argv[3]
conn = redis.Redis(host = host,
port = port,
db = 0,
decode_responses = True
)
def writeCmdToFile(cmdlist):
print(json.dumps(cmdlist))
for redis_key in keys.split(','):
if redis_key.strip() == '':
continue
real_redis_key = redis_key
if redis_key[0] == '#':
real_redis_key = redis_key[1:]
rows = conn.smembers(real_redis_key)
for row in rows:
writeCmdToFile(['sadd', real_redis_key, row])
else:
rows = conn.hgetall(real_redis_key)
for key in rows.keys():
writeCmdToFile(['hset', real_redis_key, key, rows[key]])