Python Forum
how to parse data - Printable Version

+- Python Forum (https://python-forum.io)
+-- Forum: Python Coding (https://python-forum.io/forum-7.html)
+--- Forum: General Coding Help (https://python-forum.io/forum-8.html)
+--- Thread: how to parse data (/thread-34993.html)



how to parse data - fakka - Sep-22-2021

Raw data



[{'accept_servers': True, 'addr': '10.64.1.41', 'architecture': 'x86_64', 'bigredis_storage_path': '/var/opt/redislabs/flash', 'bigstore_driver': '', 'cores': 4, 'ephemeral_storage_path': '/data/redislabs/tmp/', 'ephemeral_storage_size': 52587659264.0, 'external_addr': [], 'max_listeners': 100, 'max_redis_servers': 100, 'os_name': 'centos', 'os_semantic_version': '7', 'os_version': 'CentOS Linux 7 (Core)', 'persistent_storage_path': '/data/redislabs/persist/', 'persistent_storage_size': 52587659264.0, 'rack_id': '', 'shard_count': 1, 'shard_list': [1], 'software_version': '6.0.20-97', 'status': 'active', 'supported_database_versions': [{'db_type': 'memcached', 'version': '1.4.17'}, {'db_type': 'redis', 'version': '5.0.10'}, {'db_type': 'redis', 'version': '6.0.9'}], 'total_memory': 16637526016, 'uid': 1, 'uptime': 3366986}, {'accept_servers': True, 'addr': '10.64.1.43', 'architecture': 'x86_64', 'bigredis_storage_path': '/var/opt/redislabs/flash', 'cores': 4, 'ephemeral_storage_path': '/data/redislabs/tmp/', 'ephemeral_storage_size': 52587659264.0, 'external_addr': [], 'max_listeners': 100, 'max_redis_servers': 100, 'os_name': 'centos', 'os_semantic_version': '7', 'os_version': 'CentOS Linux 7 (Core)', 'persistent_storage_path': '/data/redislabs/persist/', 'persistent_storage_size': 52587659264.0, 'rack_id': '', 'shard_count': 1, 'shard_list': [2], 'software_version': '6.0.20-97', 'status': 'active', 'supported_database_versions': [{'db_type': 'memcached', 'version': '1.4.17'}, {'db_type': 'redis', 'version': '5.0.10'}, {'db_type': 'redis', 'version': '6.0.9'}], 'total_memory': 16637526016, 'uid': 3, 'uptime': 3366984}, {'accept_servers': True, 'addr': '10.64.1.42', 'architecture': 'x86_64', 'bigredis_storage_path': '/var/opt/redislabs/flash', 'cores': 4, 'ephemeral_storage_path': '/data/redislabs/tmp/', 'ephemeral_storage_size': 52587659264.0, 'external_addr': [], 'max_listeners': 100, 'max_redis_servers': 100, 'os_name': 'centos', 'os_semantic_version': '7', 'os_version': 'CentOS Linux 7 (Core)', 'persistent_storage_path': '/data/redislabs/persist/', 'persistent_storage_size': 52587659264.0, 'rack_id': '', 'shard_count': 0, 'shard_list': [], 'software_version': '6.0.20-97', 'status': 'active', 'supported_database_versions': [{'db_type': 'memcached', 'version': '1.4.17'}, {'db_type': 'redis', 'version': '5.0.10'}, {'db_type': 'redis', 'version': '6.0.9'}], 'total_memory': 16637526016, 'uid': 2, 'uptime': 3366977}]

Just want to pull the repeating server IP ....
eg
'addr': '10.64.1.41'
'addr': '10.64.1.42'
'addr': '10.64.1.43'

can use formatting like .....
print (res[0]['addr'])
print (res[1]['addr'])
print (res[2]['addr'])

But unsure how many records may exist .......


RE: how to parse data - fakka - Sep-22-2021

nm ..... worked it out....

numrecords=(len(res))
for x in range(0, numrecords):
print (res[x]['addr'])

Cry


RE: how to parse data - bowlofred - Sep-22-2021

Rather than loop over a count, I would prefer to loop over the objects themselves:

for server in res:
    print(server["addr"])