{
"info": {
"author": "Pulkit Gupta",
"author_email": "gupta.pulkit91@gmail.com",
"bugtrack_url": null,
"classifiers": [
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 2",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3.4",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Topic :: Software Development :: Libraries :: Python Modules"
],
"description": "zaif\n===================\n\nREST API Client for Zaif Exchange\n\nZaif Exchange\u7528\u306eREST API\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\n\n|logo|\n\n.. |logo| image:: https://bitcoin-matome.info/wp-content/uploads/2014/10/zaif-logo-300x150.png\n\nFeatures\n=========\n\n- A single client to call any type of API (public, trading, futures, leveraged). \u4efb\u610f\u306e\u7a2e\u985e\u306eAPI\uff08\u516c\u958b\u3001\u53d6\u5f15\u3001\u5148\u7269\u3001\u30ec\u30d0\u30ec\u30c3\u30b8\u30c9\uff09\u3092\u547c\u3073\u51fa\u3059\u5358\u4e00\u306e\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u3002\n- Convenient methods for making API calls using keyword arguments - packs JSON for you! \u30ad\u30fc\u30ef\u30fc\u30c9\u5f15\u6570\u3092\u4f7f\u7528\u3057\u3066API\u30b3\u30fc\u30eb\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306e\u4fbf\u5229\u306a\u30e1\u30bd\u30c3\u30c9 - JSON\u3092\u30d1\u30c3\u30af\uff01\n- Near 100% test coverage. 100\uff05\u8fd1\u3044\u30c6\u30b9\u30c8\u30ab\u30d0\u30ec\u30c3\u30b8\u3002\n- Tab-completable methods and attributes when using `IPython `_. `IPython `_ \u3092\u4f7f\u7528\u3057\u305f\u5834\u5408\u306e\u30bf\u30d6\u3067\u5b8c\u6210\u53ef\u80fd\u306a\u30e1\u30bd\u30c3\u30c9\u3068\u5c5e\u6027\u3002\n- Supports both Python 2 and Python 3. Python 2\u3068Python 3\u306e\u4e21\u65b9\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002\n\n\nInstallation (\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb)\n==============================\n\n``zaif`` is available on `PYPI `_. Install with ``pip``:\n\n.. code:: bash\n\n $ pip install zaif\n\nor with ``easy_install``:\n\n.. code:: bash\n\n $ easy_install zaif\n\nThe library is currently tested against Python versions 2.7 and 3.4+.\n\nAPI Reference (API\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9)\n=================================\n\nThe official documentation can be found on the `Zaif API reference page `_.\n\u516c\u5f0f\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u306f `Zaif API\u306e\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\u30da\u30fc\u30b8 `_ \u306b\u3042\u308a\u307e\u3059\u3002\n\nPrerequisites (\u524d\u63d0\u6761\u4ef6)\n==============================\n\nThe first thing you need to do is to `Sign Up with Zaif `_.\n\nNext, you need to obtain an **API Key** and an **API Secret**. If you're writing code for your own Zaif account, you can create API keys on `Zaif API Settings `_ page. You can create multiple API keys with different permissions for your applications.\n\nNOTE: Make sure to enable appropriate permissions for the API key.\n\nGetting started (\u59cb\u3081\u308b)\n=============================\n\nCreate a ``Client`` object for interacting with the API:\nAPI\u3068\u5bfe\u8a71\u3059\u308b\u305f\u3081\u306e ``Client`` \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3057\u307e\u3059\uff1a\n\n.. code:: python\n\n from zaif.client import Client\n\n api_key = 'your api key'\n api_secret = 'your api secret'\n\n client = Client(api_key,api_secret)\n\nError handling (\u30a8\u30e9\u30fc\u51e6\u7406)\n---------------------------------\nAll errors occurring during interaction with the API will be raised as exceptions. These exceptions will be subclasses of ``zaif.errors.ZaifError``.\n\n* When the error involves the API server, the error raised will be a subclass of ``zaif.errors.APIServerError``. \u30a8\u30e9\u30fc\u304cAPI\u30b5\u30fc\u30d0\u306b\u95a2\u4fc2\u3059\u308b\u5834\u5408\u3001\u767a\u751f\u3057\u305f\u30a8\u30e9\u30fc\u306f ``zaif.errors.APIServerError`` \u306e\u30b5\u30d6\u30af\u30e9\u30b9\u306b\u306a\u308a\u307e\u3059\u3002\n* When the error is associated with the response received form the API server, ``zaif.errors.APIResponseError`` will be raised. \u30a8\u30e9\u30fc\u304cAPI\u30b5\u30fc\u30d0\u30fc\u304b\u3089\u53d7\u4fe1\u3057\u305f\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u95a2\u9023\u4ed8\u3051\u3089\u308c\u3066\u3044\u308b\u5834\u5408\u3001``zaif.errors.APIResponseError`` \u304c\u767a\u751f\u3057\u307e\u3059\u3002\n\nFor full details of error responses, please refer to the `relevant API documentation `_.\n\n+---------------------------+----------------------+\n| Error | HTTP Status code |\n+===========================+======================+\n| NotFoundError | 404 |\n+---------------------------+----------------------+\n| InternalServerError | 500 |\n+---------------------------+----------------------+\n| ServiceUnavailableError | 503 |\n+---------------------------+----------------------+\n| GatewayTimeoutError | 504 |\n+---------------------------+----------------------+\n\nUsage (\u4f7f\u3044\u65b9)\n-------------------\nI've done my best to make the code clean, commented, and understandable; however it may not be exhaustive. For more details, please refer to the `Zaif API official documentation `_.\n\n**In short**\n\n- **Use args for URI paths**\n- **Use kwargs for formData or query parameters**\n\n\n**PUBLIC API (\u73fe\u7269\u516c\u958bAPI)**\n\nGet available currencies, tokens, ICO etc.\n\u901a\u8ca8\u60c5\u5831\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_currencies()\n client.get_currency('btc')\n client.get_currency('ETH') # capital for token currencies\n\nGet currency pairs traded on the exchange.\n\u901a\u8ca8\u30da\u30a2\u60c5\u5831\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_currency_pairs()\n client.get_currency_pair('eth_btc')\n\nGet current closing price for a currency pair.\n\u73fe\u5728\u306e\u7d42\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_last_price('eth_btc')\n\n\nGet ticker information for a currency pair.\n\u30c6\u30a3\u30c3\u30ab\u30fc\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_ticker('eth_btc')\n\n\nGet trades for a currency pair.\n\u5168\u3066\u306e\u53d6\u5f15\u5c65\u6b74\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_trades('eth_btc')\n\n\nGet board information (asks, bids) for a currency pair.\n\u677f\u60c5\u5831\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_depth('eth_btc')\n\n\n**TRADING API (\u73fe\u7269\u53d6\u5f15API)**\n\nGet current balance (asset and token balances), API key permissions, number of past trades, number of open orders, server timestamp.\n\u73fe\u5728\u306e\u6b8b\u9ad8\uff08\u4f59\u529b\u304a\u3088\u3073\u6b8b\u9ad8\u30fb\u30c8\u30fc\u30af\u30f3\uff09\u3001API\u30ad\u30fc\u306e\u6a29\u9650\u3001\u904e\u53bb\u306e\u30c8\u30ec\u30fc\u30c9\u6570\u3001\u30a2\u30af\u30c6\u30a3\u30d6\u306a\u6ce8\u6587\u6570\u3001\u30b5\u30fc\u30d0\u30fc\u306e\u30bf\u30a4\u30e0\u30b9\u30bf\u30f3\u30d7\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_info()\n\nIt is a lightweight version of ``get_info()`` and returns items excluding past trades.\nget_info\u306e\u8efd\u91cf\u7248\u3067\u3001\u904e\u53bb\u306e\u30c8\u30ec\u30fc\u30c9\u6570\u3092\u9664\u304f\u9805\u76ee\u3092\u8fd4\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_info2()\n\nGet nickname and icon image path for your account.\n\u30c1\u30e3\u30c3\u30c8\u306b\u4f7f\u7528\u3055\u308c\u308b\u30cb\u30c3\u30af\u30cd\u30fc\u30e0\u3068\u753b\u50cf\u306e\u30d1\u30b9\u3092\u8fd4\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_personal_info()\n\nGet account information such as user ID, email, etc.\n\u30e6\u30fc\u30b6\u30fcID\u3084\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3068\u3044\u3063\u305f\u500b\u4eba\u60c5\u5831\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_id_info()\n\nGet trade history.\n\u30e6\u30fc\u30b6\u30fc\u81ea\u8eab\u306e\u53d6\u5f15\u5c65\u6b74\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_trade_history()\n client.get_trade_history(currency_pair='eth_btc',count=10,order='ASC')\n\n\nGet a list of active orders (currency pairs and tokens).\n\u73fe\u5728\u6709\u52b9\u306a\u6ce8\u6587\u4e00\u89a7\u3092\u53d6\u5f97\u3057\u307e\u3059\uff08\u672a\u7d04\u5b9a\u6ce8\u6587\u4e00\u89a7\uff09\u3002\n\n.. code:: python\n\n client.get_active_orders()\n client.get_active_orders(currency_pair='eth_btc')\n client.get_active_orders(is_token_both=True)\n\n\nCreate a new trading order.\n\u53d6\u5f15\u6ce8\u6587\u3092\u884c\u3044\u307e\u3059\u3002\n\n.. code:: python\n\n client.trade(currency_pair='eth_btc',\n action='bid',\n price=100,\n amount=1.5)\n\n client.trade(currency_pair='eth_btc',\n action='bid',\n price=100,\n amount=1.5,\n limit=120)\n\n\n\nConvenient function to create a buy order.\n\n.. code:: python\n\n client.buy(currency_pair='eth_btc',price=100,amount=1.5)\n client.buy(currency_pair='eth_btc',price=100,amount=1.5,limit=120)\n\nConvenient function to create a sell order.\n\n.. code:: python\n\n client.sell(currency_pair='eth_btc',price=100,amount=1.5)\n client.sell(currency_pair='eth_btc',price=100,amount=1.5,limit=120)\n\n\nCancel an open order.\n\u6ce8\u6587\u306e\u53d6\u6d88\u3057\u3092\u884c\u3044\u307e\u3059\u3002\n\n.. code:: python\n\n client.cancel_order(order_id=123)\n client.cancel_order(order_id=123,currency_pair='eth_btc')\n\n\nWithdraw currency to a specific address.\n\u8cc7\u91d1\u306e\u5f15\u304d\u51fa\u3057\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.withdraw(currency='ETH',address='0x1234abcd5678efgh',amount=1)\n\n\nGet deposit payments (account funding) history for a currency.\n\u5165\u91d1\u5c65\u6b74\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_deposit_history(currency='btc')\n client.get_deposit_history(currency='ETH',count=50,order='ASC')\n\n\nGet history of withdrawals for a currency.\n\u51fa\u91d1\u5c65\u6b74\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_withdraw_history(currency='btc')\n client.get_withdraw_history(currency='ETH',count=50,sort='ASC')\n\n\n**FUTURES API (\u5148\u7269\u516c\u958bAPI)**\n\nGet information on all futures groups.\n\u5148\u7269\u53d6\u5f15\u306e\u60c5\u5831\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_groups()\n\nGet information on a specific futures group\n\n.. code:: python\n\n client.get_group(2)\n\n\nGet current closing price of a specific futures group.\n\u73fe\u5728\u306e\u7d42\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_group_last_price(2)\n\n\nGet ticker for a futures group.\n\u30c6\u30a3\u30c3\u30ab\u30fc\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n\n.. code:: python\n\n client.get_group_ticker(2)\n\nGet all trades of a futures group.\n\u5168\u3066\u306e\u53d6\u5f15\u5c65\u6b74\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_group_trades(2)\n\nGet board information of a futures transaction.\n\u677f\u60c5\u5831\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_group_depth(2)\n\n\n**LEVERAGE API (\u30ec\u30d0\u30ec\u30c3\u30b8\u53d6\u5f15API)**\n\nGet history of your leveraged trades.\n\u30ec\u30d0\u30ec\u30c3\u30b8\u53d6\u5f15\u306e\u30e6\u30fc\u30b6\u30fc\u81ea\u8eab\u306e\u53d6\u5f15\u5c65\u6b74\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_positions(type='futures',group_id=1)\n client.get_positions(type='futures',\n group_id=1,\n count=10,\n order='ASC',\n currency_pair='eth_btc')\n\n\nGet detailed history of your leveraged trades.\n\u30ec\u30d0\u30ec\u30c3\u30b8\u53d6\u5f15\u306e\u30e6\u30fc\u30b6\u30fc\u81ea\u8eab\u306e\u53d6\u5f15\u5c65\u6b74\u306e\u660e\u7d30\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\n\n.. code:: python\n\n client.get_position_history(type='futures',group_id=1,leverage_id=123)\n\nGet currently valid order list of leveraged transactions.\n\u30ec\u30d0\u30ec\u30c3\u30b8\u53d6\u5f15\u306e\u73fe\u5728\u6709\u52b9\u306a\u6ce8\u6587\u4e00\u89a7\u3092\u53d6\u5f97\u3057\u307e\u3059\uff08\u672a\u7d04\u5b9a\u6ce8\u6587\u4e00\u89a7\uff09\u3002\n\n.. code:: python\n\n client.get_active_positions(type='futures',group_id=1)\n client.get_active_positions(type='futures',group_id=1,currency_pair='eth_btc')\n\n\nCreate a new leveraged transaction.\n\u30ec\u30d0\u30ec\u30c3\u30b8\u53d6\u5f15\u306e\u6ce8\u6587\u3092\u884c\u3044\u307e\u3059\u3002\n\n.. code:: python\n\n client.create_position(type='futures',\n group_id=1,\n currency_pair='eth_btc',\n action='ask',\n price=100.0,\n amount=1,\n leverage=3.25)\n client.create_position(type='futures',\n group_id=1,\n currency_pair='eth_btc',\n action='ask',\n price=100.0,\n amount=1,\n leverage=3.25,\n limit=120,\n stop=90)\n\n\nConvenient method to create a new leveraged buy transaction.\n\n.. code:: python\n\n client.create_buy_position(type='futures',\n group_id=1,\n currency_pair='eth_btc',\n price=100.0,\n amount=1,\n leverage=3.25)\n client.create_buy_position(type='futures',\n group_id=1,\n currency_pair='eth_btc',\n price=100.0,\n amount=1,\n leverage=3.25,\n limit=120,\n stop=90)\n\nConvenient method to create a new leveraged sell transaction.\n\n.. code:: python\n\n client.create_sell_position(type='futures',\n group_id=1,\n currency_pair='eth_btc',\n price=100.0,\n amount=1,\n leverage=3.25)\n client.create_sell_position(type='futures',\n group_id=1,\n currency_pair='eth_btc',\n price=100.0,\n amount=1,\n leverage=3.25,\n limit=120,\n stop=90)\n\nModify a leveraged transaction.\n\u30ec\u30d0\u30ec\u30c3\u30b8\u53d6\u5f15\u306e\u6ce8\u6587\u306e\u5909\u66f4\u3092\u884c\u3044\u307e\u3059\u3002\n\n.. code:: python\n\n client.change_position(type='margin',group_id=1,leverage_id=123)\n client.change_position(type='margin',group_id=1,leverage_id=123,limit=120)\n\nCancel a leveraged transaction.\n\u30ec\u30d0\u30ec\u30c3\u30b8\u53d6\u5f15\u306e\u6ce8\u6587\u306e\u53d6\u6d88\u3057\u3092\u884c\u3044\u307e\u3059\u3002\n\n\n.. code:: python\n\n client.cancel_position(type='margin',group_id=1,leverage_id=123)\n\n\n\nTesting / Contributing (\u30c6\u30b9\u30c8/\u5bc4\u7a3f)\n====================================\nAny contribution is welcome! The process is simple:\n\n* Fork this repo\n* Make your changes\n* Run the tests (for multiple versions: preferred)\n* Submit a pull request.\n\n\nTesting for your current python version (\u73fe\u5728\u306ePython\u30d0\u30fc\u30b8\u30e7\u30f3)\n---------------------------------------------------------------------\n\nTests are run via `nosetest `_. To run the tests, clone the repository and then:\n\n.. code:: bash\n\n # Install the required dependencies\n $ pip install -r requirements.txt\n $ pip install -r test-requirements.txt\n\n # Run the tests\n $ make tests\n\n\nIf you'd also like to generate an HTML coverage report (useful for figuring out which lines of code are actually being tested), make sure the requirements are installed and then run:\n\n.. code:: bash\n\n $ make coverage\n\n\nTesting for multiple python versions (\u8907\u6570\u306ePython\u30d0\u30fc\u30b8\u30e7\u30f3)\n-------------------------------------------------------------------\n\nI am using `tox `_ to run the test suite against multiple versions of Python. Tox requires the appropriate Python interpreters to run the tests in different environments. I would recommend using `pyenv `_ for this.\n\n\nHowever, the process is a little unintuitive because ``tox`` does not seem to work with multiple versions of python (installed via ``pyenv``) when inside a ``pyenv`` virtual environment. So, first deactivate your pyenv virtual environment:\n\n.. code:: bash\n\n $ (zaifapi-venv) pyenv deactivate\n\n\nand then install `tox` with pip or easy_install:\n\n.. code:: bash\n\n $ pip install tox # or\n $ easy_install tox\n\n\nInstall python versions which you want to test:\n\n.. code:: bash\n\n $ pyenv install 2.7.14\n $ pyenv install 3.5.0\n $ pyenv install 3.6.0\n\nand so forth. Now, in your project directory:\n\n.. code:: bash\n\n # all versions which are in tox.ini file\n $ pyenv local 2.7.14 3.5.0 3.6.0\n\n # run the tests for all the above versions\n $ tox\n\n\nLicense (\u30e9\u30a4\u30bb\u30f3\u30b9)\n==========================\n\nThis project is licensed under the MIT License. See the LICENSE file for more details.\n\nAcknowledgements (\u8b1d\u8f9e)\n=========================\n\n- `zaifapi `_",
"description_content_type": "",
"docs_url": null,
"download_url": "https://github.com/pulkit1991/zaif/tarball/1.1.1",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/pulkit1991/zaif",
"keywords": "zaif,api,client,bitcoin,altcoin,trading",
"license": "MIT",
"maintainer": "",
"maintainer_email": "",
"name": "zaif",
"package_url": "https://pypi.org/project/zaif/",
"platform": "",
"project_url": "https://pypi.org/project/zaif/",
"project_urls": {
"Download": "https://github.com/pulkit1991/zaif/tarball/1.1.1",
"Homepage": "https://github.com/pulkit1991/zaif"
},
"release_url": "https://pypi.org/project/zaif/1.1.1/",
"requires_dist": null,
"requires_python": "",
"summary": "Zaif API library",
"version": "1.1.1"
},
"last_serial": 3775366,
"releases": {
"0.0.1.dev0": [
{
"comment_text": "",
"digests": {
"md5": "f11664a2f276bd7f904b45816788534a",
"sha256": "447c2b05a0b3b3fb3f790b8715750a1c88d64f2a5ee26d56b3d0fbee71d57c8e"
},
"downloads": -1,
"filename": "zaif-0.0.1.dev0.tar.gz",
"has_sig": false,
"md5_digest": "f11664a2f276bd7f904b45816788534a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 9444,
"upload_time": "2018-04-12T08:49:29",
"url": "https://files.pythonhosted.org/packages/a7/4c/6932136dd685b88c152a21c66c5998c305b3b1b125930588f0aa73203dd2/zaif-0.0.1.dev0.tar.gz"
}
],
"1.0.0": [
{
"comment_text": "",
"digests": {
"md5": "8a8821d3bbcc7844e639b20c48e6f346",
"sha256": "d3ab6ea192ae85afef2387c21b92b6e9e33ba549df26e7a5046ef1bd2a0e616c"
},
"downloads": -1,
"filename": "zaif-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "8a8821d3bbcc7844e639b20c48e6f346",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 15419,
"upload_time": "2018-04-17T02:51:51",
"url": "https://files.pythonhosted.org/packages/6c/79/fd4b89a619747cf28852249c7607cf87cefc18ea56927521badd64fc1b5c/zaif-1.0.0.tar.gz"
}
],
"1.1.0": [
{
"comment_text": "",
"digests": {
"md5": "5adf7c19d111dc57f62b448d885241ba",
"sha256": "da97a3d972a1259867424de8c41193b55ca94140a42547e8f9209661cd67ac3c"
},
"downloads": -1,
"filename": "zaif-1.1.0.tar.gz",
"has_sig": false,
"md5_digest": "5adf7c19d111dc57f62b448d885241ba",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 18756,
"upload_time": "2018-04-17T08:39:45",
"url": "https://files.pythonhosted.org/packages/8d/33/516b14b47d178d161d1603782a1878f8779696b900d1b7818f62c7f3a7d8/zaif-1.1.0.tar.gz"
}
],
"1.1.1": [
{
"comment_text": "",
"digests": {
"md5": "0587fad4d69c84684c41ad3a46ec40f0",
"sha256": "440494f869ab89ae050bfb2c3394e38e5b8f9bc145030e22355c7e4b058af66f"
},
"downloads": -1,
"filename": "zaif-1.1.1.tar.gz",
"has_sig": false,
"md5_digest": "0587fad4d69c84684c41ad3a46ec40f0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 18787,
"upload_time": "2018-04-18T02:30:09",
"url": "https://files.pythonhosted.org/packages/17/66/39f0781e06367784187bada57017d6b427adf39a85b5edf9fecc971243b4/zaif-1.1.1.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "0587fad4d69c84684c41ad3a46ec40f0",
"sha256": "440494f869ab89ae050bfb2c3394e38e5b8f9bc145030e22355c7e4b058af66f"
},
"downloads": -1,
"filename": "zaif-1.1.1.tar.gz",
"has_sig": false,
"md5_digest": "0587fad4d69c84684c41ad3a46ec40f0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 18787,
"upload_time": "2018-04-18T02:30:09",
"url": "https://files.pythonhosted.org/packages/17/66/39f0781e06367784187bada57017d6b427adf39a85b5edf9fecc971243b4/zaif-1.1.1.tar.gz"
}
]
}