#python #json #pandas #dictionary #parsing
Вопрос:
Я пытаюсь проанализировать список вложенных словарей в фрейм данных. Я могу хорошо сгладить словари, но в конце концов у меня есть только одна строка данных.
вот подключение api:
limit = 500
devices = []
for page_num in range(2):
print('-----')
offset = page_num * limit
url = url
print('requesting: ', url)
response = requests.get(url, headers=header)
data = response.json()
devices.extend(data['Items'])
который возвращает len(устройства)=1000 (ожидается).
следующий код должен взять список словарей и превратить его в словарь:
res={}
for d in devices:
res.update(d)
print(str(res))
однако он возвращает только один результат. словарь правильный, но когда я нормализую его, в нем есть необходимые столбцы, но только 1 строка данных. Где я теряю данные?
вот образец данных, а список «устройства» составлен специально из ключа «Элементы».:
{'ServiceCallId': '6a432bb8-a8f0-4048-8548-ac34e4ab32e5',
'Offset': 500,
'Limit': 500,
'TotalResultCount': 1096255,
'Items': [{'AlternativeDeviceNames': None,
'AssociatedCompanies': None,
'BrandName': 'CD Horizon',
'CatalogNumbers': [{'CatalogNumber': 'X0709272',
'IsTransactional': None,
'IsLabeled': None,
'CatalogCompanyName': '[DUPLICATE] Medtronic Sofamor Danek, Inc.'}],
'CombinationProduct': False,
'CommercialDistributionEndDate': '2018-10-08T00:00:00',
'Company': {'CompanyId': 1975,
'CompanyName': '[DUPLICATE] Medtronic Sofamor Danek, Inc.',
'CompanyNameShort': '',
Комментарии:
1. Пожалуйста, предоставьте образец данных, которые вы пытаетесь проанализировать.
2. Я поставил образец, надеюсь, это поможет.