{ "info": { "author": "Cyril DEMINGEON", "author_email": "1126098+cyrbil@users.noreply.github.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Security" ], "description": "# KeePassHTTP\n\n[![pypi_version.svg][pypi_version.svg]][pypi_project.url]\n[![pypi_status.svg][pypi_status.svg]][pypi_project.url]\n[![pypi_format.svg][pypi_format.svg]][pypi_project.url]\n[![python_versions.svg][python_versions.svg]][pypi_project.url]\n[![license.svg][license.svg]][license.url]\n[![Maintainability][maintainability.svg]][maintainability.url]\n[![travis_build.svg][travis_build.svg]][travis.url]\n[![codecov.svg][codecov.svg]][codecov.url]\n[![requirements_status.svg][requirements_status.svg]][requires.url]\n[![code_size.svg][code_size.svg]][pypi_project.url]\n[![pypi_downloads.svg][pypi_downloads.svg]][pypi_project.url]\n\n\nPython client for [KeePassHTTP][keepasshttp.url] to interact with [KeePass][keepass.url]'s credentials.\n\n\n## Install\n\n $ pip install keepasshttp\n\n\n## Usage\n\n import keepasshttp\n\n # get single credential\n credential = keepasshttp.get(\"my_credential_name_or_url\")\n print(credential.login)\n print(credential.password)\n\n # find all credentials's name\n credentials = keepasshttp.list()\n\n # fetch all partiall matching credentials\n credentials = keepasshttp.search(\"my_credential_name_or_url\")\n\n # create a new keepasshttp entry\n keepasshttp.create(\"login\", \"password\", \"url\")\n\n # update a keepasshttp entry\n credential.password = \"new password\"\n # or\n keepasshttp.update(\"login\", \"password\", \"url\", \"uuid\")\n\n\n## Command line\n\nKeePassHTTP can also be called from command line:\n\n\n $ python -m keepasshttp --help\n usage: keepasshttp [-h] [-c CONFIG_PATH] [-u URL]\n [-f {python,text,table,json,csv}]\n credential [credential ...]\n\n Fetch credentials from keepass\n\n positional arguments:\n credential Url or name to match credentials from keepass database\n\n optional arguments:\n -h, --help show this help message and exit\n -c CONFIG_PATH, --config CONFIG_PATH\n alternative path for keepasshttp's AES exchange key\n (default: ~/.python_keepass_http)\n -u URL, --url URL alternative url for keepasshttp server (default:\n 'http://localhost:19455/')\n -f {python,text,table,json,csv}, --format {python,text,table,json,csv}\n output format for credentials\n\n $ python -m keepathhttp my_credential_name_or_url\n my_credential_name_or_url\n - login: login\n - password: password\n - name: test\n - url: my_credential_name_or_url\n - id: ABCDEF1234567890ABCDEF1234567890\n - fields: []\n\n\n## Configuration\n\nBy default, this module will write AES association key to `~/.python_keepass_http`\nand use `http://localhost:19455/` to connect to the [KeePassHTTP][keepasshttp.url] server.\n\nTo change theses parameters, instantiate `keepasshttp.KeePassHTTP` class with different values.\n\n from keepasshttp import KeePassHTTP\n kph = KeePassHTTP(\n storage=\"./keepasshttp_key\",\n url=\"https://example.com:1337/\")\n kph.get(\"...\")\n ...\n\n\n## Testing\n\nYou can simply run the tests using:\n\n python -m unittest discover\n\n`KeePassHTTP` calls are mocked, to run the tests against a real server, you need to:\n\n - open `tests/test_database.kdbx` in `KeePass` password is `test`\n - set `TEST_WITH_KEEPASS` environment variable\n - run test normally\n\n\n## Coverage\n\nTo run tests with coverage:\n\n pip install pytest-cov\n pytest --cov\n\n\n[comment]: # (Urls references)\n[pypi_project.url]: https://pypi.org/project/keepasshttp/\n[license.url]: ./LICENSE.txt\n[travis.url]: https://travis-ci.org/cyrbil/python_keepass_http\n[codecov.url]: https://codecov.io/github/cyrbil/python_keepass_http\n[requires.url]: https://requires.io/github/cyrbil/python_keepass_http/requirements/?branch=master\n[keepasshttp.url]: https://github.com/pfn/keepasshttp\n[keepass.url]: https://keepass.info/\n[maintainability.url]: https://codeclimate.com/github/cyrbil/python_keepass_http/maintainability\n\n[comment]: # (Images references)\n[pypi_version.svg]: https://img.shields.io/pypi/v/keepasshttp.svg \"PYPI KeePassHTTP\"\n[pypi_status.svg]: https://img.shields.io/pypi/status/keepasshttp.svg \"PYPI KeePassHTTP\"\n[pypi_format.svg]: https://img.shields.io/pypi/format/keepasshttp.svg \"PYPI KeePassHTTP\"\n[python_versions.svg]: https://img.shields.io/pypi/pyversions/keepasshttp.svg \"PYPI KeePassHTTP\"\n[license.svg]: https://img.shields.io/github/license/cyrbil/python_keepass_http.svg \"MIT\"\n[travis_build.svg]: https://img.shields.io/travis/cyrbil/python_keepass_http/master.svg \"travis.org\"\n[codecov.svg]: https://codecov.io/github/cyrbil/python_keepass_http/coverage.svg?branch=master \"codecov.io\"\n[requirements_status.svg]: https://img.shields.io/requires/github/cyrbil/python_keepass_http.svg \"requires.io\"\n[code_size.svg]: https://img.shields.io/github/languages/code-size/cyrbil/python_keepass_http.svg \"All files\"\n[pypi_downloads.svg]: https://img.shields.io/pypi/dm/keepasshttp.svg \"PYPI KeePassHTTP\"\n[maintainability.svg]: https://api.codeclimate.com/v1/badges/9aa1b086f9dde4d1e23d/maintainability\n\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/cyrbil/python_keepass_http", "keywords": "", "license": "License :: OSI Approved :: MIT License", "maintainer": "", "maintainer_email": "", "name": "keepasshttp", "package_url": "https://pypi.org/project/keepasshttp/", "platform": "", "project_url": "https://pypi.org/project/keepasshttp/", "project_urls": { "Homepage": "https://github.com/cyrbil/python_keepass_http" }, "release_url": "https://pypi.org/project/keepasshttp/1.3.0/", "requires_dist": [ "pycryptodome (>=3.8.2)", "requests (>=2.19.1)", "six (>=1.12.0)", "ordereddict (>=1.1)" ], "requires_python": "", "summary": "Python client for KeePassHTTP to interact with KeePass's credentials", "version": "1.3.0" }, "last_serial": 5600257, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "6e498a4d9a16d43ba4a1506df78ac6f1", "sha256": "0039772f76cb30cd666b6262ccc277319e1e1adb4342fc79de97c168c84bf4ab" }, "downloads": -1, "filename": "keepasshttp-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6e498a4d9a16d43ba4a1506df78ac6f1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6419, "upload_time": "2019-01-17T01:23:31", "url": "https://files.pythonhosted.org/packages/2b/86/b4bbaf8fd086a5158dd363a503685b5888aee752d5974109cb8e4aaa8a86/keepasshttp-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "785aac5da32ca24cc2ad0964aa009dd7", "sha256": "71ca96963d20c87521ff340d33ef383f67a5f615710aa021497099ccfe20749b" }, "downloads": -1, "filename": "keepasshttp-1.0.0.tar.gz", "has_sig": false, "md5_digest": "785aac5da32ca24cc2ad0964aa009dd7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5311, "upload_time": "2019-01-17T01:23:33", "url": "https://files.pythonhosted.org/packages/cd/00/405709b1e7a1f393ac0ed540079953cac42b84637f56e04bc3a2f17d9475/keepasshttp-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "6eb6bf764dba4ebed033d45bd1dc0053", "sha256": "4f460e6f1fc86f85956d1f0cc64974b6c6416ddca385030ce30a614d17872d08" }, "downloads": -1, "filename": "keepasshttp-1.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6eb6bf764dba4ebed033d45bd1dc0053", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6593, "upload_time": "2019-01-18T23:46:22", "url": "https://files.pythonhosted.org/packages/96/ca/606fd32d6aafab567086147f1381b1e79c791b5003c0174600bdf8c97c17/keepasshttp-1.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ad292cc62252395936920badd04a404e", "sha256": "080c33ba3cc1d9ca622449f2e898997e60cb3d22da9a84044030a71935aacf97" }, "downloads": -1, "filename": "keepasshttp-1.0.1.tar.gz", "has_sig": false, "md5_digest": "ad292cc62252395936920badd04a404e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5449, "upload_time": "2019-01-18T23:46:23", "url": "https://files.pythonhosted.org/packages/35/22/fd0cbe09fd16f38db9d29ea4cf6ce337bc9febeead02a50c96efa60d53a3/keepasshttp-1.0.1.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "210567d1fdbe345ec4bc8a6ca7140031", "sha256": "b7351cfa24a3d10f07c574696e9cd2b05ee603d721c3bc0932696974d25abb05" }, "downloads": -1, "filename": "keepasshttp-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "210567d1fdbe345ec4bc8a6ca7140031", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6965, "upload_time": "2019-01-18T23:29:58", "url": "https://files.pythonhosted.org/packages/8c/59/cf3e15ea856293f203c8643b44d4d2a8205030bf514582d67f9ecd7329ba/keepasshttp-1.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "80b9e9e4af0dd677f031b13bdf2b0cd9", "sha256": "dd274f4dd614c390c83a6ada7fc9a27afbecb1fd6dcdeb2698594e61f89a5955" }, "downloads": -1, "filename": "keepasshttp-1.1.0.tar.gz", "has_sig": false, "md5_digest": "80b9e9e4af0dd677f031b13bdf2b0cd9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5998, "upload_time": "2019-01-18T23:29:59", "url": "https://files.pythonhosted.org/packages/e5/f3/4f39db7bcb545caefe417c35ea85ad08840b77106792fe1c31952d0d86c5/keepasshttp-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "a99126e16602292d8c3c590c04eea216", "sha256": "051030c0f95ac716694da244f24592f216abeea837735b493d338040eab4f6da" }, "downloads": -1, "filename": "keepasshttp-1.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a99126e16602292d8c3c590c04eea216", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6967, "upload_time": "2019-01-18T23:32:31", "url": "https://files.pythonhosted.org/packages/e1/e2/101b2f8a8df84dad213663aae5a0253afa8afde60f23a41a49a49f33c51d/keepasshttp-1.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "efc93309bd03a847034f43064089b4ca", "sha256": "c0e98d9f573fc2e78a8c6cd6420677a910d7e0a53910f95942496f45c798484b" }, "downloads": -1, "filename": "keepasshttp-1.2.0.tar.gz", "has_sig": false, "md5_digest": "efc93309bd03a847034f43064089b4ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6032, "upload_time": "2019-01-18T23:32:32", "url": "https://files.pythonhosted.org/packages/0a/6a/52a8d4e17ad5145fc3b2effce1be766ca909ccf0bb25410c785eaed01e64/keepasshttp-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "6566858378b93f087a3c2d6dfcc6a2f0", "sha256": "c02fbc76b41a80e73ed48208cbbf472be1bcaa32177524014101c20662e163ad" }, "downloads": -1, "filename": "keepasshttp-1.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6566858378b93f087a3c2d6dfcc6a2f0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6977, "upload_time": "2019-01-22T12:03:58", "url": "https://files.pythonhosted.org/packages/bd/0d/7e810076a6944041a82a96be30a7c26a215b28b1052a71ee57bcd4e5a290/keepasshttp-1.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9b7917bffdda150b605bc179295f485d", "sha256": "1d7774b9872f1ad17f9d57cce3520255ac326e4e8f7a9701c8e80818bfa4e19c" }, "downloads": -1, "filename": "keepasshttp-1.2.1.tar.gz", "has_sig": false, "md5_digest": "9b7917bffdda150b605bc179295f485d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6053, "upload_time": "2019-01-22T12:04:00", "url": "https://files.pythonhosted.org/packages/fd/6f/0032f548df4f45069c58f372582b8988f97335ed4da324be5058ef9e19a6/keepasshttp-1.2.1.tar.gz" } ], "1.2.2": [ { "comment_text": "", "digests": { "md5": "64246a15cfaa4d69be8860974848032e", "sha256": "181198f841fe7bb57a19f70eae22694dc2601819912c9e70878f33f849e09548" }, "downloads": -1, "filename": "keepasshttp-1.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "64246a15cfaa4d69be8860974848032e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8633, "upload_time": "2019-01-29T13:24:36", "url": "https://files.pythonhosted.org/packages/11/af/65a1b774cec9dc85f18b80191dc880c9d5db040a39b6036a2ab02f20fd2e/keepasshttp-1.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f2a32d872ae17022de25f16f53166dd4", "sha256": "b0dc0d533d4e96eae98961b78d7070ea36235425849b86d614596fee658f498c" }, "downloads": -1, "filename": "keepasshttp-1.2.2.tar.gz", "has_sig": false, "md5_digest": "f2a32d872ae17022de25f16f53166dd4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7437, "upload_time": "2019-01-29T13:24:37", "url": "https://files.pythonhosted.org/packages/c2/cd/a46572a2591ba0e515453a7ff48d01418a3571a03e73989a4a3afff602fe/keepasshttp-1.2.2.tar.gz" } ], "1.2.3": [ { "comment_text": "", "digests": { "md5": "56b3a143e61011a12571081859b7bd69", "sha256": "802b860eb8d6922d37765591b968dc1368519e7ee360a7c68d8c5fb10ad6cf42" }, "downloads": -1, "filename": "keepasshttp-1.2.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "56b3a143e61011a12571081859b7bd69", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8838, "upload_time": "2019-01-29T19:37:14", "url": "https://files.pythonhosted.org/packages/75/97/14974e4276affe5bb82386a49eb743c8879f36c59e2282d4c0db848dd67c/keepasshttp-1.2.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f95b3fec4fc7c74bdaf5e2c2bbcc5e0e", "sha256": "93b3451d993f84902e1b50ce0cc0d57c9682419c744c489a75a86cc4242383b7" }, "downloads": -1, "filename": "keepasshttp-1.2.3.tar.gz", "has_sig": false, "md5_digest": "f95b3fec4fc7c74bdaf5e2c2bbcc5e0e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7586, "upload_time": "2019-01-29T19:37:15", "url": "https://files.pythonhosted.org/packages/e6/af/6d87efba97a3e034c2c934b37f026f1cb74f482bee624ac179c2b9c90ade/keepasshttp-1.2.3.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "a48789b286c163b32380dd5c0f2fce1f", "sha256": "7a307aa5e0ba2b76ef20ad4f42f2b6552ff8fc07fa13c836fe319c067f5c4ffc" }, "downloads": -1, "filename": "keepasshttp-1.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a48789b286c163b32380dd5c0f2fce1f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9009, "upload_time": "2019-07-29T15:43:43", "url": "https://files.pythonhosted.org/packages/6a/00/552d4f6d14dd814c8902f4ad694aef1ec04cafccd9cec3d0bb8e4925c042/keepasshttp-1.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "81310e0ea3d35baf079690289e876913", "sha256": "ce9f9106b2f1291411e3b39691b8d7c6495cf854bb09b8cef43b387cebb711b9" }, "downloads": -1, "filename": "keepasshttp-1.3.0.tar.gz", "has_sig": false, "md5_digest": "81310e0ea3d35baf079690289e876913", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9622, "upload_time": "2019-07-29T15:43:44", "url": "https://files.pythonhosted.org/packages/71/0e/071e0febc774a626bc5b989f2e94cc07e26d9edbb1aafb15065aa8bb5e9e/keepasshttp-1.3.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a48789b286c163b32380dd5c0f2fce1f", "sha256": "7a307aa5e0ba2b76ef20ad4f42f2b6552ff8fc07fa13c836fe319c067f5c4ffc" }, "downloads": -1, "filename": "keepasshttp-1.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a48789b286c163b32380dd5c0f2fce1f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9009, "upload_time": "2019-07-29T15:43:43", "url": "https://files.pythonhosted.org/packages/6a/00/552d4f6d14dd814c8902f4ad694aef1ec04cafccd9cec3d0bb8e4925c042/keepasshttp-1.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "81310e0ea3d35baf079690289e876913", "sha256": "ce9f9106b2f1291411e3b39691b8d7c6495cf854bb09b8cef43b387cebb711b9" }, "downloads": -1, "filename": "keepasshttp-1.3.0.tar.gz", "has_sig": false, "md5_digest": "81310e0ea3d35baf079690289e876913", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9622, "upload_time": "2019-07-29T15:43:44", "url": "https://files.pythonhosted.org/packages/71/0e/071e0febc774a626bc5b989f2e94cc07e26d9edbb1aafb15065aa8bb5e9e/keepasshttp-1.3.0.tar.gz" } ] }