{ "info": { "author": "RANDOM.ORG (original library), nicorellius (Python 3 implementation)", "author_email": "nicorellius@protonmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "JSON-RPC-Python3\n================\n\nRANDOM.ORG JSON-RPC API (Release 2) implementation.\n\nThis is a Python 3 implementation of the RANDOM.ORG JSON-RPC API (Release 2).\nIt provides either serialized or unserialized access to both the signed\nand unsigned methods of the API through the ``RandomOrgClient`` class.\nIt also provides a convenience class through the ``RandomOrgClient``\nclass, the ``RandomOrgCache``, for precaching requests. In the context\nof this module, a serialized client is one for which the sequence of\nrequests matches the sequence of responses.\n\nInstallation\n------------\n\nTo install, simply: ``pip install rdoclient-py3`` after you set up\na virtual environment (eg, with ``virtualenvwrapper``):\n\n``mkvirtualenv --python=/usr/local/bin/python3.6 rdoclient-py3``\n\nThe base RDO implementation only requires the\n`requests `__ library:\n``pip install requests``. However, this package (``rdoclient-py3``)\nrequires additional dependencies:\n\n``pip install pytest``\n\nTests\n-----\n\nSecure an API key and run the tests. Note that to run the accompanying tests\nthe API\\_KEY fields must be given authentic values. Get an API key from\n`here `__.\n\nSet ``_API_KEY_1`` equal to your API key, and leave ``_API_KEY_2`` equal to\nsomething else.\n\nThen run tests like so:\n\n``py.test test_rdoclient.py``\n\nUsage\n-----\n\nThe default setup is best for non-time-critical serialized requests, eg,\nbatch clients:\n\n::\n\n >>> from rdoclient_py3 import RandomOrgClient\n >>> r = RandomOrgClient(YOUR_API_KEY_HERE)\n >>> r.generate_integers(5, 0, 10)\n [6, 2, 8, 9, 2]\n\n...or for more time sensitive serialized applications, eg, real-time\ndraws, use:\n\n::\n\n >>> r = RandomOrgClient(YOUR_API_KEY_HERE, blocking_timeout=2.0, http_timeout=10.0)\n >>> r.generate_signed_integers(5, 0, 10)\n {'random': {u'min': 0, u'max': 10, u'completionTime': u'2014-05-19 14:26:14Z', u'serialNumber': 1482, u'n': 5, u'base': 10, u'hashedApiKey': u'HASHED_KEY_HERE', u'data': [10, 9, 0, 1, 5], u'method': u'generateSignedIntegers', u'replacement': True}, 'data': [10, 9, 0, 1, 5], 'signature': u'SIGNATURE_HERE'}\n\nIf obtaining some kind of response instantly is important, a cache\nshould be used. A cache will populate itself as quickly and efficiently\nas possible allowing pre-obtained randomness to be supplied instantly.\nIf randomness is not available - eg, the cache is empty - the cache will\nreturn an Empty exception allowing the lack of randomness to be handled\nwithout delay:\n\n::\n\n >>> r = RandomOrgClient(YOUR_API_KEY_HERE, blocking_timeout=60.0*60.0, http_timeout=30.0)\n >>> c = r.create_integer_cache(5, 0, 10)\n >>> try:\n ... c.get()\n ... except Queue.Empty:\n ... # handle lack of true random number here\n ... # possibly use a pseudo random number generator\n ...\n [1, 4, 6, 9, 10]\n\nNote that caches don't support signed responses as it is assumed that\nclients using the signing features want full control over the serial\nnumbering of responses.\n\nFinally, it is possible to request live results as-soon-as-possible and\nwithout serialization, however this may be more prone to timeout\nfailures as the client must obey the server's advisory delay times if\nthe server is overloaded:\n\n::\n\n >>> r = RandomOrgClient(YOUR_API_KEY_HERE, blocking_timeout=0.0, http_timeout=10.0, serialized=False)\n >>> r.generate_integers(5, 0, 10)\n [3, 5, 2, 4, 8]\n\nDocumentation\n-------------\n\nFor a full list of available randomness generation functions and other\nfeatures see ``rdoclient.py`` documentation and\n`this link `__.\n\nChange log\n----------\n\nSee `this link `__ for packaging documentation.\n\n* 2019-08-21 Release 2.0.6: Updated API Endpoint to use v2\n* 2018-04-10 Release 2.0.5: Fixed Python 3.5 compatibility for exception errors\n* 2018-02-11 Release 2.0.3: Improved README and fixed tests\n* 2017-12-06 Release 2.0.2: Obfuscated API in logging output\n* 2017-07-15 Release 2.0.1: Converted README.md to RST for PyPi\n* 2017-07-15 Release 2.0.0: Initial release. Added to PyPi\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/nicorellius/json-rpc-python3", "keywords": "RANDOM.ORG random client implementation", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "rdoclient-py3", "package_url": "https://pypi.org/project/rdoclient-py3/", "platform": "", "project_url": "https://pypi.org/project/rdoclient-py3/", "project_urls": { "Homepage": "https://github.com/nicorellius/json-rpc-python3" }, "release_url": "https://pypi.org/project/rdoclient-py3/2.0.6/", "requires_dist": [ "pytest", "requests" ], "requires_python": "", "summary": "RANDOM.ORG JSON-RPC API (Release 2) Python 3 implementation.", "version": "2.0.6" }, "last_serial": 5711802, "releases": { "2.0.0": [ { "comment_text": "", "digests": { "md5": "779ac254651e830cfa772d2c568f51a4", "sha256": "a8c76f811b1ac31d729c6d89f800880b24e09d308789140c01287db9849392fd" }, "downloads": -1, "filename": "rdoclient_py3-2.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "779ac254651e830cfa772d2c568f51a4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 17017, "upload_time": "2017-12-07T03:34:30", "url": "https://files.pythonhosted.org/packages/2a/a1/94fb82d9c17c336a5c5291eb10812e0fd30d0f3b3a5493cac906c7390abe/rdoclient_py3-2.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f8b3b5a6aeddfe500972b13fcc4b5de0", "sha256": "649536586a21991634e442da835508e0bfb653dbfb6756b67bcb92b8f4361b8a" }, "downloads": -1, "filename": "rdoclient-py3-2.0.0.tar.gz", "has_sig": false, "md5_digest": "f8b3b5a6aeddfe500972b13fcc4b5de0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 13193, "upload_time": "2017-07-15T17:24:49", "url": "https://files.pythonhosted.org/packages/55/ce/a02ac936f45613ca3b1a755d1a70b69ca49670046c85f6a17e02c3d179cf/rdoclient-py3-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "f7e346c22fa443a7de33ed58717263bd", "sha256": "d96cf18167b0d71e24dc224854de8bafdeccf40ce6530f8ea59f034dad69056b" }, "downloads": -1, "filename": "rdoclient_py3-2.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "f7e346c22fa443a7de33ed58717263bd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 17264, "upload_time": "2017-12-07T03:34:32", "url": "https://files.pythonhosted.org/packages/af/f5/d02fce483cf141d078262b65658cf5c08d4658c362f1595a14afab9398e1/rdoclient_py3-2.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ffc628ce67f9516ba7d5f08d2d5a87ed", "sha256": "846d9a4727b064c7f139cb8ef5cc2c0acbfa3547cd9c46945c39b96510de3565" }, "downloads": -1, "filename": "rdoclient-py3-2.0.1.tar.gz", "has_sig": true, "md5_digest": "ffc628ce67f9516ba7d5f08d2d5a87ed", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 13555, "upload_time": "2017-07-15T17:57:34", "url": "https://files.pythonhosted.org/packages/11/45/27ad31ff228431cbd174de36303907e8c1d1a6ba55159109577ee90aab2e/rdoclient-py3-2.0.1.tar.gz" } ], "2.0.2": [ { "comment_text": "", "digests": { "md5": "563849b565b15967d5828be6184232de", "sha256": "e8c27c61f58bf378fdad392cf2f30186eff5b36df6088e59ce6915af2cfa89c9" }, "downloads": -1, "filename": "rdoclient-py3-2.0.2.tar.gz", "has_sig": false, "md5_digest": "563849b565b15967d5828be6184232de", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 13632, "upload_time": "2017-12-07T03:34:35", "url": "https://files.pythonhosted.org/packages/a8/3a/2176bec1afe9c623de1020cb04a49a4998cb16467cb9556e4d0bd60d6bad/rdoclient-py3-2.0.2.tar.gz" } ], "2.0.3": [ { "comment_text": "", "digests": { "md5": "3f70b2096dc97d876cf8949cf09579e0", "sha256": "fb11d5acbf2cf60b84b6bc66a2a0425083d5820c2da8b89afe7995d490aaaf03" }, "downloads": -1, "filename": "rdoclient_py3-2.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "3f70b2096dc97d876cf8949cf09579e0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 17676, "upload_time": "2018-02-12T04:25:22", "url": "https://files.pythonhosted.org/packages/92/79/31a75ad09eca31e4709f402b23f7d7c8a55a4a5b70f271c7949ad381d573/rdoclient_py3-2.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5cf18642a219265e4c708dec356735df", "sha256": "5d5215c5f2abd23d6955419d96996ae53c97529b017ef1f1a63a2a8423bef0d8" }, "downloads": -1, "filename": "rdoclient-py3-2.0.3.tar.gz", "has_sig": false, "md5_digest": "5cf18642a219265e4c708dec356735df", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 13923, "upload_time": "2018-02-12T04:25:25", "url": "https://files.pythonhosted.org/packages/4c/ed/5a4ebecc088a741ddd0deac6ed9981b30e5c3a51f849f95342a8dab1f66f/rdoclient-py3-2.0.3.tar.gz" } ], "2.0.4": [ { "comment_text": "", "digests": { "md5": "7d096149661bbe8a2af3d9f34d4c2eb4", "sha256": "28739d4813729e0e58af40cac8293e296bf2cfd9d9216b0577d3451e25538e2d" }, "downloads": -1, "filename": "rdoclient_py3-2.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "7d096149661bbe8a2af3d9f34d4c2eb4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 17794, "upload_time": "2018-04-10T23:29:05", "url": "https://files.pythonhosted.org/packages/44/84/629686f25d5ffb43d1fe80ae44119e7c1bd0873831069884e4014df272e9/rdoclient_py3-2.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "818efb224c6f90253095ad33a0399708", "sha256": "6d7a728a418036235452d81c22c9160754dbb31b0c0b330cf6b96589bba20993" }, "downloads": -1, "filename": "rdoclient-py3-2.0.4.tar.gz", "has_sig": false, "md5_digest": "818efb224c6f90253095ad33a0399708", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 13992, "upload_time": "2018-04-10T23:29:08", "url": "https://files.pythonhosted.org/packages/b4/cd/af14fe5b727993f765fbfdfd5a5da8707f2b23f971dd7171d6dc5b15041b/rdoclient-py3-2.0.4.tar.gz" } ], "2.0.5": [ { "comment_text": "", "digests": { "md5": "ec28ef7fac6fc6ce88d036a80e3a2789", "sha256": "378c3ab1f5b4b667a22042227b5cb7bcae8064597d48693a3a9ed35fc4c908c6" }, "downloads": -1, "filename": "rdoclient_py3-2.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "ec28ef7fac6fc6ce88d036a80e3a2789", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 17862, "upload_time": "2018-04-10T23:34:15", "url": "https://files.pythonhosted.org/packages/0d/28/b0932be495f1c29e2e4548e22fd83e3b47a2f3ba4da78c19a35fea6bcea8/rdoclient_py3-2.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "da04fa1a6bc06fe82b9193580e7f9f63", "sha256": "edc2444acf50734ffa3b657493763804e7b5cdbaedaab171e36b18a5bd78b957" }, "downloads": -1, "filename": "rdoclient-py3-2.0.5.tar.gz", "has_sig": false, "md5_digest": "da04fa1a6bc06fe82b9193580e7f9f63", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 14025, "upload_time": "2018-04-10T23:34:28", "url": "https://files.pythonhosted.org/packages/37/fe/6c78dedadff4f9c5bc9308188e0002555890a8f1481c1a7ca45b79f46850/rdoclient-py3-2.0.5.tar.gz" } ], "2.0.6": [ { "comment_text": "", "digests": { "md5": "6871f278c3a8e1e27bbb4578304ebfdf", "sha256": "4dc22ceb219d62d333d5ff302ef37fed9bce24c49a8f06f420d409213455df84" }, "downloads": -1, "filename": "rdoclient_py3-2.0.6-py2-none-any.whl", "has_sig": false, "md5_digest": "6871f278c3a8e1e27bbb4578304ebfdf", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 17883, "upload_time": "2019-08-21T21:15:53", "url": "https://files.pythonhosted.org/packages/24/a8/1dd8c4298cfcb493bea56409498c8aacd9d666bf701836e583f6da511802/rdoclient_py3-2.0.6-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "07812a34c8e96474c8f5fcb884346efd", "sha256": "02eb58a602be03b2ffd448db96177911510d905be6cf7488a3983afeae20b005" }, "downloads": -1, "filename": "rdoclient_py3-2.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "07812a34c8e96474c8f5fcb884346efd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17902, "upload_time": "2019-08-21T21:15:54", "url": "https://files.pythonhosted.org/packages/04/5b/7633e63479d7106842b0c7012b3606f6b31ef6ca5fd9c2ccb3a719c3b151/rdoclient_py3-2.0.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "019b7f06423716116106b7d109a8f689", "sha256": "522e5971e3deacca426bc70b1d8bd498f128e5960dc57faccf861edc53420de3" }, "downloads": -1, "filename": "rdoclient-py3-2.0.6.tar.gz", "has_sig": false, "md5_digest": "019b7f06423716116106b7d109a8f689", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14052, "upload_time": "2019-08-21T21:16:03", "url": "https://files.pythonhosted.org/packages/ac/ee/0f8d7f39ef01d3a9f78a60bd7a76f25668dd8d9ef6b1076a008a4b20bda6/rdoclient-py3-2.0.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6871f278c3a8e1e27bbb4578304ebfdf", "sha256": "4dc22ceb219d62d333d5ff302ef37fed9bce24c49a8f06f420d409213455df84" }, "downloads": -1, "filename": "rdoclient_py3-2.0.6-py2-none-any.whl", "has_sig": false, "md5_digest": "6871f278c3a8e1e27bbb4578304ebfdf", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 17883, "upload_time": "2019-08-21T21:15:53", "url": "https://files.pythonhosted.org/packages/24/a8/1dd8c4298cfcb493bea56409498c8aacd9d666bf701836e583f6da511802/rdoclient_py3-2.0.6-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "07812a34c8e96474c8f5fcb884346efd", "sha256": "02eb58a602be03b2ffd448db96177911510d905be6cf7488a3983afeae20b005" }, "downloads": -1, "filename": "rdoclient_py3-2.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "07812a34c8e96474c8f5fcb884346efd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17902, "upload_time": "2019-08-21T21:15:54", "url": "https://files.pythonhosted.org/packages/04/5b/7633e63479d7106842b0c7012b3606f6b31ef6ca5fd9c2ccb3a719c3b151/rdoclient_py3-2.0.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "019b7f06423716116106b7d109a8f689", "sha256": "522e5971e3deacca426bc70b1d8bd498f128e5960dc57faccf861edc53420de3" }, "downloads": -1, "filename": "rdoclient-py3-2.0.6.tar.gz", "has_sig": false, "md5_digest": "019b7f06423716116106b7d109a8f689", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14052, "upload_time": "2019-08-21T21:16:03", "url": "https://files.pythonhosted.org/packages/ac/ee/0f8d7f39ef01d3a9f78a60bd7a76f25668dd8d9ef6b1076a008a4b20bda6/rdoclient-py3-2.0.6.tar.gz" } ] }