Map and parse JSON text to python dict
Project description
# About json-mapper
Package for map and parse JSON text to python dict.
For example, to bring to readable form of responses from the Rest API.
# Usage example
Suppose we have such a terrible JSON dump:
```python
{
"ApiResponse": {
"ApiResponseWrapper": {
"HotelsResponse": [
{
"Country": "Russia",
"HotelId": "1234",
"HotelName": "Space Hotel",
"Photos": [
{
"BigUrl": "http://www.image.url.com",
"ThumbnailUrl": "http://www.image.url.com"
},
... other photos ...
],
"RoomsResponse": [
{
"BedsCount": "1",
"RoomId": "12312"
},
... other rooms ...
]
},
... other hotels ...
],
"ResponseTimestamp": "2342423423423423",
"SessionId": "0ABAA840-F6EC-6913-A1C2-7341899060B6"
},
"SomeProperty": "SomeData"
}
}
```
Example to map the his pretty:
```python
import json
from json_mapper.mapper import map_json
json_data = json.loads(open('dump.json').read())
mapping_config = {
'ApiResponse.ApiResponseWrapper': {
'ResponseTimestamp': 'last_update',
'{loop=>hotels} HotelsResponse': {
'HotelId': 'id',
'Country': 'country',
'{loop=>photos} Photos': 'BigUrl',
'{loop=>rooms} RoomsResponse': {
'RoomId': 'id',
'BedsCount': 'beds'
}
}
}
}
result = map_json(mapping_config, json_data)
>>> pprint(result)
{'hotels': [{'country': u'Russia',
'id': u'1234',
'photos': [u'http://www.image.url.com',
u'http://www.image.url.com'],
'rooms': [{'beds': u'1', 'id': u'12312'},
{'beds': u'1', 'id': u'12312'}]},
{'country': u'Russia',
'id': u'1234',
'photos': [u'http://www.image.url.com',
u'http://www.image.url.com'],
'rooms': [{'beds': u'1', 'id': u'12312'},
{'beds': u'1', 'id': u'12312'}]}],
'last_update': u'2342423423423423'}
```
See full example in tests directory.
Package for map and parse JSON text to python dict.
For example, to bring to readable form of responses from the Rest API.
# Usage example
Suppose we have such a terrible JSON dump:
```python
{
"ApiResponse": {
"ApiResponseWrapper": {
"HotelsResponse": [
{
"Country": "Russia",
"HotelId": "1234",
"HotelName": "Space Hotel",
"Photos": [
{
"BigUrl": "http://www.image.url.com",
"ThumbnailUrl": "http://www.image.url.com"
},
... other photos ...
],
"RoomsResponse": [
{
"BedsCount": "1",
"RoomId": "12312"
},
... other rooms ...
]
},
... other hotels ...
],
"ResponseTimestamp": "2342423423423423",
"SessionId": "0ABAA840-F6EC-6913-A1C2-7341899060B6"
},
"SomeProperty": "SomeData"
}
}
```
Example to map the his pretty:
```python
import json
from json_mapper.mapper import map_json
json_data = json.loads(open('dump.json').read())
mapping_config = {
'ApiResponse.ApiResponseWrapper': {
'ResponseTimestamp': 'last_update',
'{loop=>hotels} HotelsResponse': {
'HotelId': 'id',
'Country': 'country',
'{loop=>photos} Photos': 'BigUrl',
'{loop=>rooms} RoomsResponse': {
'RoomId': 'id',
'BedsCount': 'beds'
}
}
}
}
result = map_json(mapping_config, json_data)
>>> pprint(result)
{'hotels': [{'country': u'Russia',
'id': u'1234',
'photos': [u'http://www.image.url.com',
u'http://www.image.url.com'],
'rooms': [{'beds': u'1', 'id': u'12312'},
{'beds': u'1', 'id': u'12312'}]},
{'country': u'Russia',
'id': u'1234',
'photos': [u'http://www.image.url.com',
u'http://www.image.url.com'],
'rooms': [{'beds': u'1', 'id': u'12312'},
{'beds': u'1', 'id': u'12312'}]}],
'last_update': u'2342423423423423'}
```
See full example in tests directory.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
json-mapper-0.1.15.tar.gz
(4.3 kB
view details)
File details
Details for the file json-mapper-0.1.15.tar.gz
.
File metadata
- Download URL: json-mapper-0.1.15.tar.gz
- Upload date:
- Size: 4.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3fbe6f73e950b78b398b44b702342b2a7c55573b2471c63d801ec9a8a9e30dc2 |
|
MD5 | 5a9fa532bf792a549b6152e4faec6f13 |
|
BLAKE2b-256 | f96360bfc68587216774a788e31f87cbbe81e478a09abbf1afad28ee8dc4c08d |