Декодировать столбец строк Base64 в Python - PullRequest
1 голос
/ 15 марта 2019

Ситуация: У меня есть столбец, который я буду извлекать из SQL с сотнями тысяч строк Base 64, которые я хотел бы декодировать.

Одна декодированная строка выглядит следующим образом:

b'{"a":1,"b":2,"c":3,...}'

Цель: Как я могу просто извлечь значение первого словаря.В этом случае это будет 1. Я хотел бы, чтобы результаты оказались в массиве numpy или df.

Я нашел следующий код, чтобы помочь мне декодировать одну строку, но не уверен, как ее использовать длякаждая строка в столбце.

import base64
coded_string = '''value to decode'''
base64.b64decode(coded_string)

1 Ответ

1 голос
/ 17 марта 2019

Предполагая, что ваш фрагмент является правильно сформированным Python (хотя, скорее всего, это будет JSON), вы можете использовать literal_eval:

from ast import literal_eval
from base64 import b64decode
from pprint import pprint

binary = b64decode(some_str)

lib = literal_eval(binary.decode('utf8'))
pprint(lib)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...