{ "info": { "author": "Alon Reznik", "author_email": "alonreznik@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "# DynamoDB Json\r\nDynamoDB json util to load and dump strings of Dynamodb json format to python object and vise-versa\r\n\r\n# Install\r\njust use pip: \r\n```\r\npip install dynamodb-json\r\n```\r\n# Use\r\n\r\nThe dynamodb-json util works the same as json loads and dumps functions:\r\n```python\r\nimport time\r\nimport uuid\r\nfrom datetime import datetime\r\nfrom decimal import Decimal\r\n\r\nfrom dynamodb_json import json_util as json\r\n\r\njson_ = {\"MyString\": \"a\",\r\n \"num\": 4,\r\n \"MyBool\": False,\r\n \"my_dict\": {\"my_date\": datetime.utcnow()},\r\n \"MyNone\": None,\r\n \"MyZero\": 0,\r\n \"myDecimal\": Decimal(\"19.2\"), # converts Decimal to float, load it as float\r\n \"myLong\": long(1938475658493),\r\n \"MyNestedDict\": {\r\n \"my_other_nested\": {\r\n \"name\": \"John\",\r\n \"surname\": \"Lennon\",\r\n \"MyOtherNone\": None,\r\n \"floaty\": float(29.4),\r\n \"myList\": [1, 3, 4, 5, 6, \"This Is Sparta!\"],\r\n \"mySet\": {1, 3, 4, 5, 6}, # converts set to list, returns as list\r\n \"myUUID\": uuid.uuid4(), # converts uuid to string, loads it as string\r\n \"time\": time.time() # converts it to seconds python float, loads it as float\r\n }\r\n }\r\n }\r\n\r\ndynamodb_json = json.dumps(json_)\r\n\r\n# {\r\n# \"my_dict\": {\"M\": {\"my_date\": {\"S\": \"2017-04-22T14:41:35.780000\"}}}, \r\n# \"MyBool\": {\"BOOL\": false}, \"MyNone\": {\"NULL\": true}, \r\n# \"MyNestedDict\": {\r\n# \"M\": {\"my_other_nested\": {\r\n# \"M\": {\"myUUID\": {\"S\": \"2f4ad21e098f49b18e22ad209779048b\"}, \r\n# \"surname\": {\"S\": \"Lennon\"}, \"name\": {\"S\": \"John\"}, \r\n# \"mySet\": {\"L\": [{\"N\": \"1\"}, {\"N\": \"3\"}, {\"N\": \"4\"}, {\"N\": \"5\"}, {\"N\": \"6\"}]}, \r\n# \"floaty\": {\"N\": \"29.4\"}, \"time\": {\"N\": \"1492872095.78\"}, \r\n# \"myList\": {\"L\": [{\"N\": \"1\"}, {\"N\": \"3\"}, {\"N\": \"4\"}, {\"N\": \"5\"}, {\"N\": \"6\"}, {\"S\": \"This Is Sparta!\"}]}, \r\n# \"MyOtherNone\": {\"NULL\": true}}\r\n# }\r\n# }\r\n# }, \r\n# \"myDecimal\": {\"N\": \"19.2\"}, \"num\": {\"N\": \"4\"}, \r\n# \"MyString\": {\"S\": \"a\"}, \r\n# \"myLong\": {\"N\": \"1938475658493\"}, \r\n# \"MyZero\": {\"N\": \"0\"}\r\n# }\r\n\r\n\r\njson.loads(dynamodb_json)\r\n\r\n# {'my_dict': {'my_date': datetime.datetime(2017, 4, 22, 14, 41, 35, 780000)}, 'MyBool': False, 'MyNone': None,\r\n# 'MyNestedDict': {\r\n# 'my_other_nested': {'myUUID': '2f4ad21e098f49b18e22ad209779048b', \r\n# 'surname': 'Lennon', 'name': 'John',\r\n# 'mySet': [1, 3, 4, 5, 6], \r\n# 'floaty': 29.4, \r\n# 'time': 1492872095.78,\r\n# 'myList': [1, 3, 4, 5, 6, 'This Is Sparta!'], \r\n# 'MyOtherNone': None\r\n# }\r\n# }, \r\n# 'myDecimal': 19.2,\r\n# 'num': 4, \r\n# 'MyString': 'a', \r\n# 'myLong': 1938475658493L, \r\n# 'MyZero': 0\r\n# }\r\n```\r\n\r\n\r\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/Alonreznik/dynamodb-json", "keywords": "python dynamodb amazon json aws", "license": "Mozilla", "maintainer": "", "maintainer_email": "", "name": "dynamodb-json", "package_url": "https://pypi.org/project/dynamodb-json/", "platform": "", "project_url": "https://pypi.org/project/dynamodb-json/", "project_urls": { "Homepage": "https://github.com/Alonreznik/dynamodb-json" }, "release_url": "https://pypi.org/project/dynamodb-json/1.3/", "requires_dist": [ "simplejson (>=3.10.0)", "boto3 (>=1.4.0)", "six" ], "requires_python": "", "summary": "A DynamoDB json util from and to python objects", "version": "1.3" }, "last_serial": 3848870, "releases": { "1.0.5": [ { "comment_text": "", "digests": { "md5": "d7519725cb8cf1ec9d2b99bd1f7a6783", "sha256": "9ac7c778773398eacea76aa7cbe469c47fb357fc88250b8f860b9da77cfa3cf6" }, "downloads": -1, "filename": "dynamodb_json-1.0.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d7519725cb8cf1ec9d2b99bd1f7a6783", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7202, "upload_time": "2017-04-22T15:45:30", "url": "https://files.pythonhosted.org/packages/82/d9/940bb671ef943185d4335c80c8cadc9484f83b9063da50a05aec903028fe/dynamodb_json-1.0.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f5340362e8360b8cce2ab8fd02d509f0", "sha256": "8b1d6b9c47531c4be20580ab9f8299b42022f45b0d4efdcd9ff3ff1fefa0a6ac" }, "downloads": -1, "filename": "dynamodb-json-1.0.5.tar.gz", "has_sig": false, "md5_digest": "f5340362e8360b8cce2ab8fd02d509f0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3569, "upload_time": "2017-04-22T15:45:34", "url": "https://files.pythonhosted.org/packages/8c/c3/ee904806deba5ae32b1a25d3fc9a88cacdb545b43c23fdcaa33db0fb1bab/dynamodb-json-1.0.5.tar.gz" } ], "1.0.6": [ { "comment_text": "", "digests": { "md5": "d117c8d9044a488d45736c0510b3ff0a", "sha256": "1800e1b1a22eea084626895eccebdcf40436c3b8dfde79362b46b74c8253252e" }, "downloads": -1, "filename": "dynamodb_json-1.0.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d117c8d9044a488d45736c0510b3ff0a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7230, "upload_time": "2017-04-22T15:48:29", "url": "https://files.pythonhosted.org/packages/85/72/9c598a6494c33a5d312f441cc5fe3eaea9d80e6042ac0e159af9292aabd5/dynamodb_json-1.0.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bddf1b95535ad76a3c05750c70037498", "sha256": "4af3f59ce2f0c51ae9e182d9f995bf5faa380ea950aa71399e835d9cad4f7f9d" }, "downloads": -1, "filename": "dynamodb-json-1.0.6.tar.gz", "has_sig": false, "md5_digest": "bddf1b95535ad76a3c05750c70037498", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3587, "upload_time": "2017-04-22T15:48:31", "url": "https://files.pythonhosted.org/packages/d5/03/d2220a6241ca980730c502d7951986e00cda97d7e6e8659cfcc3a8e827b9/dynamodb-json-1.0.6.tar.gz" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "70d9493fa77db4e453bd821447d83f8f", "sha256": "44edea0655d64db6975fe029fb134961817b62c9436d34a37bb5ac74d12ab929" }, "downloads": -1, "filename": "dynamodb_json-1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "70d9493fa77db4e453bd821447d83f8f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7208, "upload_time": "2017-04-22T16:01:28", "url": "https://files.pythonhosted.org/packages/45/d5/6d5b7a0ea945dc22cf7d2df7850ec7249e698ce5d5054c8a8dcc82453cd3/dynamodb_json-1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "de668b4110fa9604cbae9e1e009fd749", "sha256": "95fec85c65ef79e56d63889d7cc658ed774f1721a1b3b46512e8f5a4025a99e5" }, "downloads": -1, "filename": "dynamodb-json-1.1.tar.gz", "has_sig": false, "md5_digest": "de668b4110fa9604cbae9e1e009fd749", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3576, "upload_time": "2017-04-22T16:01:30", "url": "https://files.pythonhosted.org/packages/c3/84/c454e2ecc0a8ad24e338ec7608c4009106e4e4d0824e0810220d02c410a7/dynamodb-json-1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "4703c5bd54ede901a8c7f42c7706cad0", "sha256": "2a5799e2068d20ca984c930af076eb7cff86be8fb23c78ae08dd793f44019a1e" }, "downloads": -1, "filename": "dynamodb_json-1.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4703c5bd54ede901a8c7f42c7706cad0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7254, "upload_time": "2017-04-23T10:18:09", "url": "https://files.pythonhosted.org/packages/86/e7/551f6d4a04cc9d4ab57b13c1ec384e51da1267a927cfbe88056707622c7b/dynamodb_json-1.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bbb13718cfcc71c465135fc975a15d7f", "sha256": "5c612b36ab28c017b9f0b3a9eb87a53d3df64f7c80b7be2eda6c34fff138d537" }, "downloads": -1, "filename": "dynamodb-json-1.1.2.tar.gz", "has_sig": false, "md5_digest": "bbb13718cfcc71c465135fc975a15d7f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3604, "upload_time": "2017-04-23T10:18:12", "url": "https://files.pythonhosted.org/packages/f5/f9/e20068a0332b687d768d4a0a3116109544a60c70003c69ce39dcfdd7312e/dynamodb-json-1.1.2.tar.gz" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "467c1f3a172a47fa7bcde50d1a0691c4", "sha256": "1b47b1272ea66cbc5c933c72e0ef1d93f6a2352c1d9ca72b08522e8465ed4efb" }, "downloads": -1, "filename": "dynamodb_json-1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "467c1f3a172a47fa7bcde50d1a0691c4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7297, "upload_time": "2017-10-25T12:35:44", "url": "https://files.pythonhosted.org/packages/49/98/60853a0bc8ffae28cb5af4a8ecfd5a95f0a46259cf2b96d3d40ede8c5472/dynamodb_json-1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d1a2007911fd5a18e4adc4799ce5baca", "sha256": "913b8951dcecffab601a3db3ea36d987c713af2dd7be4a7878b4a1be725f3c35" }, "downloads": -1, "filename": "dynamodb-json-1.2.tar.gz", "has_sig": false, "md5_digest": "d1a2007911fd5a18e4adc4799ce5baca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3902, "upload_time": "2017-10-25T12:35:46", "url": "https://files.pythonhosted.org/packages/59/31/348a30ab2fcc878605eccb7ba1e9d3157ce37568e9cf304285729032dbbf/dynamodb-json-1.2.tar.gz" } ], "1.3": [ { "comment_text": "", "digests": { "md5": "a069cec78d5a2c8988e4b90a1b3598f0", "sha256": "3d1dbfde4cb22e993fd5d78e7a16fd70480ad9d567f4f95f67a860005b0430d2" }, "downloads": -1, "filename": "dynamodb_json-1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a069cec78d5a2c8988e4b90a1b3598f0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7279, "upload_time": "2018-05-09T21:35:41", "url": "https://files.pythonhosted.org/packages/34/ea/d24e409689fecd09330fd9e5d1e1668a458a90534fbf9cc2523f66eb64c3/dynamodb_json-1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "17bf7374fbf35990d86daf6a5b3b01cc", "sha256": "236672bc144f68de6477b748ab61b8187a7d64c400d7c0f400498a930e19b8b3" }, "downloads": -1, "filename": "dynamodb-json-1.3.tar.gz", "has_sig": false, "md5_digest": "17bf7374fbf35990d86daf6a5b3b01cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3906, "upload_time": "2018-05-09T21:35:42", "url": "https://files.pythonhosted.org/packages/a3/cb/951fe17016ea768a73eb046effd8762a93bd4f3ae7a420833f1e642e86da/dynamodb-json-1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a069cec78d5a2c8988e4b90a1b3598f0", "sha256": "3d1dbfde4cb22e993fd5d78e7a16fd70480ad9d567f4f95f67a860005b0430d2" }, "downloads": -1, "filename": "dynamodb_json-1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a069cec78d5a2c8988e4b90a1b3598f0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7279, "upload_time": "2018-05-09T21:35:41", "url": "https://files.pythonhosted.org/packages/34/ea/d24e409689fecd09330fd9e5d1e1668a458a90534fbf9cc2523f66eb64c3/dynamodb_json-1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "17bf7374fbf35990d86daf6a5b3b01cc", "sha256": "236672bc144f68de6477b748ab61b8187a7d64c400d7c0f400498a930e19b8b3" }, "downloads": -1, "filename": "dynamodb-json-1.3.tar.gz", "has_sig": false, "md5_digest": "17bf7374fbf35990d86daf6a5b3b01cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3906, "upload_time": "2018-05-09T21:35:42", "url": "https://files.pythonhosted.org/packages/a3/cb/951fe17016ea768a73eb046effd8762a93bd4f3ae7a420833f1e642e86da/dynamodb-json-1.3.tar.gz" } ] }