In [1]:
import toml

In [27]:
import pprint
pp = pprint.PrettyPrinter(indent=2)

In [28]:
h_card_string = """
name = 'Myles Braithwaite'
nickname = 'Myles'

url = 'https://mylesb.ca/'
email = 'me@mylesb.ca'

bday = 1986-09-19T09:00:00-05:00

[[org]]
  type = 'card'
  name = 'Monkey in your Soul'
  url = 'https://monkeyinyoursoul.com/'

[[org]]
  type = 'card'
  name = 'Rotten Bananas'
  url = 'https://rottenbananas.ca/'

[[org]]
  type = 'card'
  name = 'GrantMatch™'
  url = 'https://grantmatch.ca/'

  [org.adr]
    type = 'adr'
    street_address = '2265 Upper Middle Road East'
    extended_address = 'Suite 101'
    locality = 'Oakville'
    region = 'Ontario'
    postal_code = 'L6H 0G5'
    country_name = 'Canada'

    [org.adr.geo]
      type = 'geo'
      latitude = 43.5034701
      longitude = -79.6744108

[adr]
  type = 'adr'
  locality = 'Toronto'
  country_name = 'Canada'
"""

h_card = toml.loads(h_card_string)

pp.pprint(h_card)


{ 'adr': {'country_name': 'Canada', 'locality': 'Toronto', 'type': 'adr'},
  'bday': datetime.datetime(1986, 9, 19, 9, 0, tzinfo=<toml.TomlTz object at 0x104962fd0>),
  'email': 'me@mylesb.ca',
  'name': 'Myles Braithwaite',
  'nickname': 'Myles',
  'org': [ { 'name': 'Monkey in your Soul',
             'type': 'card',
             'url': 'https://monkeyinyoursoul.com/'},
           { 'name': 'Rotten Bananas',
             'type': 'card',
             'url': 'https://rottenbananas.ca/'},
           { 'adr': { 'country_name': 'Canada',
                      'extended_address': 'Suite 101',
                      'geo': { 'latitude': 43.5034701,
                               'longitude': -79.6744108,
                               'type': 'geo'},
                      'locality': 'Oakville',
                      'postal_code': 'L6H 0G5',
                      'region': 'Ontario',
                      'street_address': '2265 Upper Middle Road East',
                      'type': 'adr'},
             'name': 'GrantMatch™',
             'type': 'card',
             'url': 'https://grantmatch.ca/'}],
  'url': 'https://mylesb.ca/'}

In [ ]:


In [ ]: