Ver código fonte

修正redis读取文本内容类型错误

dongzhaorui 2 anos atrás
pai
commit
322f822075
1 arquivos alterados com 4 adições e 4 exclusões
  1. 4 4
      find_source/crawler/q.py

+ 4 - 4
find_source/crawler/q.py

@@ -22,7 +22,7 @@ class RedisQueue:
 
     def get_keys(self, key):
         # Redis的键支持模式匹配
-        keys = [key.decode() for key in self.redis.keys(key + '-[0-9]*')]
+        keys = [key for key in self.redis.keys(key + '-[0-9]*')]
         # 按优先级将键降序排序
         keys = sorted(keys, key=lambda x: x.split('-')[-1], reverse=True)
         return keys
@@ -75,8 +75,8 @@ class RedisQueue:
                 try:
                     _task_key, _task = self.redis.brpop(all_keys, timeout=1)
                     results.extend([
-                        _task_key.decode(),
-                        json.loads(_task.decode(), object_hook=lambda d: Task(**d))
+                        _task_key,
+                        json.loads(_task, object_hook=lambda d: Task(**d))
                     ])
                 except TypeError:
                     pass
@@ -114,6 +114,6 @@ class RedisQueue:
             if _task is not None:
                 results.extend([
                     _task_key,
-                    json.loads(_task.decode(), object_hook=lambda d: Task(**d))
+                    json.loads(_task, object_hook=lambda d: Task(**d))
                 ])
             return results