{ "info": { "author": "Meng.yangyang", "author_email": "mengyy_linux@163.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 2" ], "description": "# hack12306\n12306 \u8ba2\u7968 Python SDK\n\n* [\u9879\u76ee\u7ed3\u6784](#\u9879\u76ee\u7ed3\u6784)\n* [\u4f7f\u7528\u8bf4\u660e](#\u4f7f\u7528\u8bf4\u660e)\n* [\u6d4b\u8bd5](#\u6d4b\u8bd5)\n* [\u96c6\u6210](#\u96c6\u6210)\n* [\u8d5e\u52a9](#\u8d5e\u52a9)\n\n## \u9879\u76ee\u7ed3\u6784\n```\nhack12306\n\u251c\u2500\u2500 LICENSE\n\u251c\u2500\u2500 README.md\n\u251c\u2500\u2500 hack12306\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 __init__.py\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 auth.py\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 base.py\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 constants.py\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 exceptions.py\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 order.py\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 pay.py\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 query.py\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 settings.py\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 user.py\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 utils.py\n\u251c\u2500\u2500 requirements-test.txt\n\u251c\u2500\u2500 setup.py\n\u2514\u2500\u2500 tests\n \u251c\u2500\u2500 __init__.py\n \u251c\u2500\u2500 config.py\n \u251c\u2500\u2500 test_auth.py\n \u251c\u2500\u2500 test_order.py\n \u251c\u2500\u2500 test_pay.py\n \u251c\u2500\u2500 test_query.py\n \u2514\u2500\u2500 test_user.py\n```\n\n* hack12306/base.py \u5c01\u88c512306\u6240\u6709\u7f51\u7edc\u8bf7\u6c42\n* hack12306/auth.py \u8ba4\u8bc1\u6a21\u5757\n* hack12306/user.py \u7528\u6237\u4fe1\u606f\u67e5\u8be2\u6a21\u5757\n* hack12306/query.py \u4f59\u7968\u67e5\u8be2\u7b49\u4fe1\u606f\u67e5\u8be2\u6a21\u5757\n* hack12306/order.py \u8ba2\u7968\u4e0b\u5355\u6a21\u5757\n* hack12306/pay.py \u8ba2\u5355\u652f\u4ed8\u6a21\u5757\n* hack12306/settings.py \u914d\u7f6e\u6a21\u5757\n* hack12306/utils.py \u5de5\u5177\u6a21\u5757\n* hack12306/constangs.py \u5e38\u91cf\u3001\u679a\u4e3e\u3001\u72b6\u6001\u7b49\n* tests \u6d4b\u8bd5\u7528\u4f8b\n\n## \u4f7f\u7528\u8bf4\u660e\n\n\u7528\u6237\u8ba4\u8bc1\uff08\u4e8c\u7ef4\u7801\uff09-> \u67e5\u8be2\u4f59\u7968 -> \u63d0\u4ea4\u8ba2\u5355 -> \u652f\u4ed8\u8ba2\u5355\n\n* \u7528\u6237\u8ba4\u8bc1\u6d41\u7a0b\n\n![](http://processon.com/chart_image/5c2c2b92e4b0fa03ce872c0b.png)\n\n* \u63d0\u4ea4\u8ba2\u5355\u6d41\u7a0b\n\n![](http://processon.com/chart_image/5c32a837e4b048f108c44b77.png)\n\n* \u652f\u4ed8\u8ba2\u5355\u6d41\u7a0b\n\n![](http://processon.com/chart_image/5c3a92e7e4b0fa03ce96ed42.png)\n\n## \u6d4b\u8bd5\n\n```sh\ngit clone git@github.com:hack12306/hack12306.git;\nvirtualenv venv;\nsource venv/bin/activate;\npip install -r requirements-test.txt;\npython setup.py install;\npytest --verbose tests/test_query.py;\npython tests/test_auth.py;\npython tests/test_order.py;\npython tests/test_pay.py;\n```\n> \u6d4b\u8bd5\u8ba2\u5355\u6a21\u5757\uff0c\u9700\u8981\u914d\u7f6e`tests.config::COOKIES`, \u6d4b\u8bd5\u652f\u4ed8\u6a21\u5757\uff0c\u9700\u8981\u914d\u7f6e`tests.config::ORDER_SEQUENCE_NO`\n\n## \u96c6\u6210\n\n```sh\npip install hack12306 -U --user;\n```\n\n## \u8d5e\u52a9\n\n\u5982\u679c\u8be5\u9879\u76ee\u6709\u5e2e\u52a9\u5230\u4f60\uff0c\u8bf7\u626b\u63cf\u4e8c\u7ef4\u7801\u8d5e\u8d4f\u6211\u4eec\uff0c\u4f60\u7684\u9f13\u52b1\u662f\u6211\u4eec\u6301\u7eed\u6539\u8fdb\u4f18\u5316\u7684\u52a8\u529b\u3002\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/hack12306/hack12306", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "hack12306", "package_url": "https://pypi.org/project/hack12306/", "platform": "", "project_url": "https://pypi.org/project/hack12306/", "project_urls": { "Homepage": "https://github.com/hack12306/hack12306" }, "release_url": "https://pypi.org/project/hack12306/0.1.20/", "requires_dist": null, "requires_python": "", "summary": "12306 Python SDK, packaging the 12306 API", "version": "0.1.20" }, "last_serial": 5455759, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "0cca4ad764d0329dad8deb44b576f659", "sha256": "b409458af0843369a20b9597c8bae2cd90f1966005d11093af909d75923a078c" }, "downloads": -1, "filename": "hack12306-0.0.1.tar.gz", "has_sig": false, "md5_digest": "0cca4ad764d0329dad8deb44b576f659", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1048, "upload_time": "2018-12-26T15:40:08", "url": "https://files.pythonhosted.org/packages/da/16/57f2ab57ce268365875644672c4e5d70b7e156efe345f5cfe5f67802287d/hack12306-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "7531f25ca802f3b1c1bd495352dccd93", "sha256": "d8721da2c018d2b54d3e211a50f937652db54f1b2c926158dac27f51e7f6a9ba" }, "downloads": -1, "filename": "hack12306-0.0.2.tar.gz", "has_sig": false, "md5_digest": "7531f25ca802f3b1c1bd495352dccd93", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6056, "upload_time": "2019-01-02T01:08:55", "url": "https://files.pythonhosted.org/packages/df/27/88c06e6e7b2467744d0872cf52e49701ec67381134b143de11b555d5943e/hack12306-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "2d05b632f8c171285e3d6fbb68b9a090", "sha256": "261063e9adee62a087b51e078637780601da15d6ca9fbf7421490249851ba67b" }, "downloads": -1, "filename": "hack12306-0.0.3.tar.gz", "has_sig": false, "md5_digest": "2d05b632f8c171285e3d6fbb68b9a090", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7098, "upload_time": "2019-01-02T12:12:37", "url": "https://files.pythonhosted.org/packages/b9/98/5f4748def42a4c91ddc3207487f96aacd5fb93ca4cb9445f822d08f0d302/hack12306-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "d8b44c1cc91c2d486e373477b7cc98d8", "sha256": "5b56e05e464f0b3f11518964d716a9adaf39e7abdf3f781fe88c93ff12267f62" }, "downloads": -1, "filename": "hack12306-0.0.4.tar.gz", "has_sig": false, "md5_digest": "d8b44c1cc91c2d486e373477b7cc98d8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11181, "upload_time": "2019-01-05T07:44:39", "url": "https://files.pythonhosted.org/packages/35/c6/e96b7e90f04c34dc9ba643c97f3e7cbeeb5d8b9e6c840a9e93cc6f268b33/hack12306-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "b33666ad961ddc09445e4bc536ad6477", "sha256": "b1bf83747d527627728db75bea0b6453ec4215e67889ea063784e029edbc7553" }, "downloads": -1, "filename": "hack12306-0.0.5.tar.gz", "has_sig": false, "md5_digest": "b33666ad961ddc09445e4bc536ad6477", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13677, "upload_time": "2019-01-07T01:12:15", "url": "https://files.pythonhosted.org/packages/9a/a9/f79447a8915bba6e0d6b071c8be0992b6480e92e0d28f6cf2824f9b73a05/hack12306-0.0.5.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "0e8b2d0b98bac710f342f581ace6650a", "sha256": "28a2079016ac7769da4446ce0f1082f9ab1b457431d6b4e3e07074632f158f5c" }, "downloads": -1, "filename": "hack12306-0.1.0.tar.gz", "has_sig": false, "md5_digest": "0e8b2d0b98bac710f342f581ace6650a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13691, "upload_time": "2019-01-07T02:09:11", "url": "https://files.pythonhosted.org/packages/a3/63/ba6362ea14fcce4f46ad6f5fc40d6400aafcb2319733b9320cbff9f7197f/hack12306-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "cbc758dee4b124c535f14c55430ac367", "sha256": "3cf5ee35626f8eee5fe33024742c7bca82a7cb9029eb32e3c6715da3d132ccb2" }, "downloads": -1, "filename": "hack12306-0.1.1.tar.gz", "has_sig": false, "md5_digest": "cbc758dee4b124c535f14c55430ac367", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13613, "upload_time": "2019-01-07T05:18:59", "url": "https://files.pythonhosted.org/packages/01/2f/2ef710b8d5554a8f283bdcc11c1f465bbf8189611ec544b9faabccb2fa19/hack12306-0.1.1.tar.gz" } ], "0.1.10": [ { "comment_text": "", "digests": { "md5": "0bae718b80eab56de98db6c7e751b72d", "sha256": "2ba8ba9132d3275b88350fef18c209be0a39102b46393835a00321476babfc74" }, "downloads": -1, "filename": "hack12306-0.1.10.tar.gz", "has_sig": false, "md5_digest": "0bae718b80eab56de98db6c7e751b72d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15731, "upload_time": "2019-01-10T11:57:10", "url": "https://files.pythonhosted.org/packages/72/98/a1431db7923585a9718b41169c54d63ecd4cdae140085fdcf8fcb94ccce2/hack12306-0.1.10.tar.gz" } ], "0.1.11": [ { "comment_text": "", "digests": { "md5": "0949dfba0031de19d47e78ad0acb0b30", "sha256": "4643a1dfd2a3601d08e06af4be91e70462bdf600e77d3b67752394deefb3228e" }, "downloads": -1, "filename": "hack12306-0.1.11.tar.gz", "has_sig": false, "md5_digest": "0949dfba0031de19d47e78ad0acb0b30", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15779, "upload_time": "2019-01-11T01:25:45", "url": "https://files.pythonhosted.org/packages/8f/e6/9333a5e7065e5579fea06c31fcde471d9e6b61a5c8cb3cb55b9b79e15cb4/hack12306-0.1.11.tar.gz" } ], "0.1.12": [ { "comment_text": "", "digests": { "md5": "a11440375afa2edaa7fbe412a8168caa", "sha256": "e8563aa271f2f3855b443cf901b6b37350a502b1ae4971cbc5809a1a52605609" }, "downloads": -1, "filename": "hack12306-0.1.12.tar.gz", "has_sig": false, "md5_digest": "a11440375afa2edaa7fbe412a8168caa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15643, "upload_time": "2019-01-15T05:47:49", "url": "https://files.pythonhosted.org/packages/7a/73/83f7a0c18af2e47d54b07876f7669f703f80b8a62380c8a5e6d11f523ada/hack12306-0.1.12.tar.gz" } ], "0.1.13": [ { "comment_text": "", "digests": { "md5": "ed844509dc6d98f0b0761147a5dc0b65", "sha256": "f4fa5996748d7c8a2c5e4fd28317be68ae3f6ad3e522c0857185671544b840e2" }, "downloads": -1, "filename": "hack12306-0.1.13.tar.gz", "has_sig": false, "md5_digest": "ed844509dc6d98f0b0761147a5dc0b65", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15721, "upload_time": "2019-01-15T07:29:16", "url": "https://files.pythonhosted.org/packages/0f/12/c99bf2d8d72e2dfb9e924e8990d5bd94235e2fb2e4e1553aa3e768c55abf/hack12306-0.1.13.tar.gz" } ], "0.1.14": [ { "comment_text": "", "digests": { "md5": "9d199ee750cbaa4552032f397aadded5", "sha256": "9e312efef25fb03383094e6a0047bcf32ecee10512ccfcd4ab04f3d8d98be6e5" }, "downloads": -1, "filename": "hack12306-0.1.14.tar.gz", "has_sig": false, "md5_digest": "9d199ee750cbaa4552032f397aadded5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15809, "upload_time": "2019-01-20T08:36:18", "url": "https://files.pythonhosted.org/packages/92/fe/0d276e54b2b76297f70e5ed2ba7435ca7772dc4327b518a219c7fb000d0e/hack12306-0.1.14.tar.gz" } ], "0.1.15": [ { "comment_text": "", "digests": { "md5": "212b760cf565084bfddce59e812beb80", "sha256": "8e0a90f1d181e6182abdd5042a9de00c0e63e10ff52167bb386bbd548711f5ef" }, "downloads": -1, "filename": "hack12306-0.1.15.tar.gz", "has_sig": false, "md5_digest": "212b760cf565084bfddce59e812beb80", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15945, "upload_time": "2019-01-25T06:23:47", "url": "https://files.pythonhosted.org/packages/9d/2b/abc81cd7b766064bdd582380ebb49908dfb050ee6431c8c6c80b3021f256/hack12306-0.1.15.tar.gz" } ], "0.1.16": [ { "comment_text": "", "digests": { "md5": "3f7af90198237ba42847937fa5a79f35", "sha256": "2e387a31a517acd1180c99a48444a0eaeec32d3e136faa2594ea70a2fddb1fed" }, "downloads": -1, "filename": "hack12306-0.1.16.tar.gz", "has_sig": false, "md5_digest": "3f7af90198237ba42847937fa5a79f35", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15947, "upload_time": "2019-02-21T11:08:20", "url": "https://files.pythonhosted.org/packages/97/22/0e9107b0920cd3d49052721174ec8b07e96c972504b69d219686d4c41cd9/hack12306-0.1.16.tar.gz" } ], "0.1.17": [ { "comment_text": "", "digests": { "md5": "7795a2c28e2ff9e259b7ee5116bc653f", "sha256": "9e52bea6124b8e8959814c286a5a63c81d9751158ad00b60c80062634a9429cb" }, "downloads": -1, "filename": "hack12306-0.1.17.tar.gz", "has_sig": false, "md5_digest": "7795a2c28e2ff9e259b7ee5116bc653f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16154, "upload_time": "2019-03-12T06:24:21", "url": "https://files.pythonhosted.org/packages/99/6e/bad7fcca55d617b79c11f5bb109328b7117655e8ca82fbec65dab2bde8bf/hack12306-0.1.17.tar.gz" } ], "0.1.18": [ { "comment_text": "", "digests": { "md5": "081dff59c53913f44fc8aaf58fe61dc8", "sha256": "6b02d8add5baa6a0bb31f655421235e8f8d9b82999a1292968d50e9a8247cfed" }, "downloads": -1, "filename": "hack12306-0.1.18.tar.gz", "has_sig": false, "md5_digest": "081dff59c53913f44fc8aaf58fe61dc8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16418, "upload_time": "2019-03-24T02:07:50", "url": "https://files.pythonhosted.org/packages/65/d3/c57ee47e1b376cb19af03f997af3102ecad32f62e2ac63b675d61c4be106/hack12306-0.1.18.tar.gz" } ], "0.1.19": [ { "comment_text": "", "digests": { "md5": "e260b044bfac62a5626ac69902c7dd0c", "sha256": "e9a62599af3cad39f353221da4e7d2d1359a6f4bfd80ada319286b57cab4a4f0" }, "downloads": -1, "filename": "hack12306-0.1.19.tar.gz", "has_sig": false, "md5_digest": "e260b044bfac62a5626ac69902c7dd0c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16419, "upload_time": "2019-06-27T08:00:55", "url": "https://files.pythonhosted.org/packages/27/05/997f8f32e3bfb07a617a2a8fc1ff8d8621c8dee623fc55ff829c184fb7e9/hack12306-0.1.19.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "06279380bc30218ba36c8b37283795c1", "sha256": "74b6c7f6762d6788689b0d21c3555ac95b599b1b3bdc0f2c673b6a05b5297396" }, "downloads": -1, "filename": "hack12306-0.1.2.tar.gz", "has_sig": false, "md5_digest": "06279380bc30218ba36c8b37283795c1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14004, "upload_time": "2019-01-08T01:15:47", "url": "https://files.pythonhosted.org/packages/b6/85/accd9bb46e79998ccb9a54b5f4c319dd3493015121e268f94020606245ae/hack12306-0.1.2.tar.gz" } ], "0.1.20": [ { "comment_text": "", "digests": { "md5": "08ce661ccb8cf718d6777ade2520c1c0", "sha256": "0c97dbd7f750bfae3eb163469947ddc8766bd1694f8edf074e1167586b99b938" }, "downloads": -1, "filename": "hack12306-0.1.20.tar.gz", "has_sig": false, "md5_digest": "08ce661ccb8cf718d6777ade2520c1c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16506, "upload_time": "2019-06-27T08:30:24", "url": "https://files.pythonhosted.org/packages/85/12/dabc42c5d0e1ab5f1bc73f7a2092cd58c51f2f5ceca0953aa10772b6321b/hack12306-0.1.20.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "eb20c31c53312762bf2c9dacdfb99a16", "sha256": "dd92d93f0dcd2ca56b2ca7ae68f1f19951c045c8e4b379b90776083d812b9691" }, "downloads": -1, "filename": "hack12306-0.1.3.tar.gz", "has_sig": false, "md5_digest": "eb20c31c53312762bf2c9dacdfb99a16", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14382, "upload_time": "2019-01-08T12:34:52", "url": "https://files.pythonhosted.org/packages/f2/fe/11d8cc7e58007b7770d8612971cc4ad741817296d14c53211a7c4f98795e/hack12306-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "156649c2909bb72f24af7e94ff34c77a", "sha256": "df249336a4b15d50fb60d1d199a4e49e0cf4b900a72879691c8542b9383ff554" }, "downloads": -1, "filename": "hack12306-0.1.4.tar.gz", "has_sig": false, "md5_digest": "156649c2909bb72f24af7e94ff34c77a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14407, "upload_time": "2019-01-09T04:10:30", "url": "https://files.pythonhosted.org/packages/06/4b/b3e0a41c1d8ebea675c2e5f0b7ce7250d8f9926eec0f920ab9c708adb961/hack12306-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "21d444b3398b3cab83dc9695050f2195", "sha256": "fca4b367d83fb3fe360afffed4b970f8bcae097dfc23adf87405944b5a56f33d" }, "downloads": -1, "filename": "hack12306-0.1.5.tar.gz", "has_sig": false, "md5_digest": "21d444b3398b3cab83dc9695050f2195", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14437, "upload_time": "2019-01-09T07:21:13", "url": "https://files.pythonhosted.org/packages/82/0b/d133a3cf5e99ac95e53b1932fad8e884c19fced9a449cc6c41100c25f2c2/hack12306-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "e249d8a9afd5c4f41b9d6efabfdf1a58", "sha256": "05a783d910ef58c6575887ebece06a3566ed44b6535b8e47554259a80af3773e" }, "downloads": -1, "filename": "hack12306-0.1.6.tar.gz", "has_sig": false, "md5_digest": "e249d8a9afd5c4f41b9d6efabfdf1a58", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14476, "upload_time": "2019-01-09T07:48:08", "url": "https://files.pythonhosted.org/packages/b4/34/a762095082796c4a42a4653751879d485adb4ccd681bdf902f7c8fa1463e/hack12306-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "f0e1159f776aca051c8192e029f9ae87", "sha256": "79ea3bd81da0e3dcf815acad77eb1a8ff009a4cc2d3b034c417ba1da16c2cf42" }, "downloads": -1, "filename": "hack12306-0.1.7.tar.gz", "has_sig": false, "md5_digest": "f0e1159f776aca051c8192e029f9ae87", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14494, "upload_time": "2019-01-09T10:05:56", "url": "https://files.pythonhosted.org/packages/ee/91/0ad69724d1632987c00d2b3fa8e3df45290ab44070555ea3921aeb70fb3d/hack12306-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "5893e40bf93b63731592f3ea2dd41119", "sha256": "2fcb59f92557b628b435fc56d98d4d8150f8139bd8085242b3b23a10b54cd782" }, "downloads": -1, "filename": "hack12306-0.1.8.tar.gz", "has_sig": false, "md5_digest": "5893e40bf93b63731592f3ea2dd41119", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14481, "upload_time": "2019-01-09T10:23:13", "url": "https://files.pythonhosted.org/packages/ca/ed/6f1806149f22f4bb8ee371f2a0f3ae1536689864b3a6ac17db0c0c996e2a/hack12306-0.1.8.tar.gz" } ], "0.1.9": [ { "comment_text": "", "digests": { "md5": "b789e88429824d59be6a2c3960972348", "sha256": "5d9d89b1aafa2af38dc5a31dd88801074e6770b0e4c07b0b11a8f225da18ad56" }, "downloads": -1, "filename": "hack12306-0.1.9.tar.gz", "has_sig": false, "md5_digest": "b789e88429824d59be6a2c3960972348", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14469, "upload_time": "2019-01-09T14:05:49", "url": "https://files.pythonhosted.org/packages/8a/50/ab940f1feb85b25b36e774c4ffb39d287cc8e9546a4578b63dcb5377abfa/hack12306-0.1.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "08ce661ccb8cf718d6777ade2520c1c0", "sha256": "0c97dbd7f750bfae3eb163469947ddc8766bd1694f8edf074e1167586b99b938" }, "downloads": -1, "filename": "hack12306-0.1.20.tar.gz", "has_sig": false, "md5_digest": "08ce661ccb8cf718d6777ade2520c1c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16506, "upload_time": "2019-06-27T08:30:24", "url": "https://files.pythonhosted.org/packages/85/12/dabc42c5d0e1ab5f1bc73f7a2092cd58c51f2f5ceca0953aa10772b6321b/hack12306-0.1.20.tar.gz" } ] }