ODPS Python SDK and data analysis framework
===========================================
|PyPI version| |Docs| |License| |Implementation|
Elegent way to access ODPS API.
`Documentation <http://pyodps.readthedocs.org/>`__
Installation
------------
The quick way:
::
pip install pyodps[full]
If you don’t need to use Jupyter, just type
::
pip install pyodps
The dependencies will be installed automatically.
Or from source code (not recommended for production use):
.. code:: shell
$ virtualenv pyodps_env
$ source pyodps_env/bin/activate
$ pip install git+https://github.com/aliyun/aliyun-odps-python-sdk.git
Dependencies
------------
- Python (>=2.7), including Python 3+, pypy, Python 3.7 recommended
- setuptools (>=3.0)
Run Tests
---------
- install pytest
- copy conf/test.conf.template to odps/tests/test.conf, and fill it
with your account
- run ``pytest odps``
Usage
-----
.. code:: python
>>> import os
>>> from odps import ODPS
>>> # Make sure environment variable ALIBABA_CLOUD_ACCESS_KEY_ID already set to Access Key ID of user
>>> # while environment variable ALIBABA_CLOUD_ACCESS_KEY_SECRET set to Access Key Secret of user.
>>> # Not recommended to hardcode Access Key ID or Access Key Secret in your code.
>>> o = ODPS(
>>> os.getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'),
>>> os.getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
>>> project='**your-project**',
>>> endpoint='**your-endpoint**',
>>> )
>>> dual = o.get_table('dual')
>>> dual.name
'dual'
>>> dual.table_schema
odps.Schema {
c_int_a bigint
c_int_b bigint
c_double_a double
c_double_b double
c_string_a string
c_string_b string
c_bool_a boolean
c_bool_b boolean
c_datetime_a datetime
c_datetime_b datetime
}
>>> dual.creation_time
datetime.datetime(2014, 6, 6, 13, 28, 24)
>>> dual.is_virtual_view
False
>>> dual.size
448
>>> dual.table_schema.columns
[<column c_int_a, type bigint>,
<column c_int_b, type bigint>,
<column c_double_a, type double>,
<column c_double_b, type double>,
<column c_string_a, type string>,
<column c_string_b, type string>,
<column c_bool_a, type boolean>,
<column c_bool_b, type boolean>,
<column c_datetime_a, type datetime>,
<column c_datetime_b, type datetime>]
DataFrame API
-------------
.. code:: python
>>> from odps.df import DataFrame
>>> df = DataFrame(o.get_table('pyodps_iris'))
>>> df.dtypes
odps.Schema {
sepallength float64
sepalwidth float64
petallength float64
petalwidth float64
name string
}
>>> df.head(5)
|==========================================| 1 / 1 (100.00%) 0s
sepallength sepalwidth petallength petalwidth name
0 5.1 3.5 1.4 0.2 Iris-setosa
1 4.9 3.0 1.4 0.2 Iris-setosa
2 4.7 3.2 1.3 0.2 Iris-setosa
3 4.6 3.1 1.5 0.2 Iris-setosa
4 5.0 3.6 1.4 0.2 Iris-setosa
>>> df[df.sepalwidth > 3]['name', 'sepalwidth'].head(5)
|==========================================| 1 / 1 (100.00%) 12s
name sepalwidth
0 Iris-setosa 3.5
1 Iris-setosa 3.2
2 Iris-setosa 3.1
3 Iris-setosa 3.6
4 Iris-setosa 3.9
Command-line and IPython enhancement
------------------------------------
::
In [1]: %load_ext odps
In [2]: %enter
Out[2]: <odps.inter.Room at 0x10fe0e450>
In [3]: %sql select * from pyodps_iris limit 5
|==========================================| 1 / 1 (100.00%) 2s
Out[3]:
sepallength sepalwidth petallength petalwidth name
0 5.1 3.5 1.4 0.2 Iris-setosa
1 4.9 3.0 1.4 0.2 Iris-setosa
2 4.7 3.2 1.3 0.2 Iris-setosa
3 4.6 3.1 1.5 0.2 Iris-setosa
4 5.0 3.6 1.4 0.2 Iris-setosa
Python UDF Debugging Tool
-------------------------
.. code:: python
#file: plus.py
from odps.udf import annotate
@annotate('bigint,bigint->bigint')
class Plus(object):
def evaluate(self, a, b):
return a + b
::
$ cat plus.input
1,1
3,2
$ pyou plus.Plus < plus.input
2
5
Contributing
------------
For a development install, clone the repository and then install from
source:
::
git clone https://github.com/aliyun/aliyun-odps-python-sdk.git
cd pyodps
pip install -r requirements.txt -e .
If you need to modify the frontend code, you need to install
`nodejs/npm <https://www.npmjs.com/>`__. To build and install your
frontend code, use
::
python setup.py build_js
python setup.py install_js
License
-------
Licensed under the `Apache License
2.0 <https://www.apache.org/licenses/LICENSE-2.0.html>`__
.. |PyPI version| image:: https://img.shields.io/pypi/v/pyodps.svg?style=flat-square
:target: https://pypi.python.org/pypi/pyodps
.. |Docs| image:: https://img.shields.io/badge/docs-latest-brightgreen.svg?style=flat-square
:target: http://pyodps.readthedocs.org/
.. |License| image:: https://img.shields.io/pypi/l/pyodps.svg?style=flat-square
:target: https://github.com/aliyun/aliyun-odps-python-sdk/blob/master/License
.. |Implementation| image:: https://img.shields.io/pypi/implementation/pyodps.svg?style=flat-square
Raw data
{
"_id": null,
"home_page": "http://github.com/aliyun/aliyun-odps-python-sdk",
"name": "pyodps",
"maintainer": "Wenjun Si",
"docs_url": null,
"requires_python": null,
"maintainer_email": "wenjun.swj@alibaba-inc.com",
"keywords": null,
"author": "Wu Wei",
"author_email": "weiwu@cacheme.net",
"download_url": "https://files.pythonhosted.org/packages/72/9b/4de67dc9973497069dfecc866329dfa8ae6075e78cbac1e2a3e40bf7a511/pyodps-0.11.6.tar.gz",
"platform": null,
"description": "ODPS Python SDK and data analysis framework\n===========================================\n\n|PyPI version| |Docs| |License| |Implementation|\n\nElegent way to access ODPS API.\n`Documentation <http://pyodps.readthedocs.org/>`__\n\nInstallation\n------------\n\nThe quick way:\n\n::\n\n pip install pyodps[full]\n\nIf you don\u2019t need to use Jupyter, just type\n\n::\n\n pip install pyodps\n\nThe dependencies will be installed automatically.\n\nOr from source code (not recommended for production use):\n\n.. code:: shell\n\n $ virtualenv pyodps_env\n $ source pyodps_env/bin/activate\n $ pip install git+https://github.com/aliyun/aliyun-odps-python-sdk.git\n\nDependencies\n------------\n\n- Python (>=2.7), including Python 3+, pypy, Python 3.7 recommended\n- setuptools (>=3.0)\n\nRun Tests\n---------\n\n- install pytest\n- copy conf/test.conf.template to odps/tests/test.conf, and fill it\n with your account\n- run ``pytest odps``\n\nUsage\n-----\n\n.. code:: python\n\n >>> import os\n >>> from odps import ODPS\n >>> # Make sure environment variable ALIBABA_CLOUD_ACCESS_KEY_ID already set to Access Key ID of user\n >>> # while environment variable ALIBABA_CLOUD_ACCESS_KEY_SECRET set to Access Key Secret of user.\n >>> # Not recommended to hardcode Access Key ID or Access Key Secret in your code.\n >>> o = ODPS(\n >>> os.getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'),\n >>> os.getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),\n >>> project='**your-project**',\n >>> endpoint='**your-endpoint**',\n >>> )\n >>> dual = o.get_table('dual')\n >>> dual.name\n 'dual'\n >>> dual.table_schema\n odps.Schema {\n c_int_a bigint\n c_int_b bigint\n c_double_a double\n c_double_b double\n c_string_a string\n c_string_b string\n c_bool_a boolean\n c_bool_b boolean\n c_datetime_a datetime\n c_datetime_b datetime\n }\n >>> dual.creation_time\n datetime.datetime(2014, 6, 6, 13, 28, 24)\n >>> dual.is_virtual_view\n False\n >>> dual.size\n 448\n >>> dual.table_schema.columns\n [<column c_int_a, type bigint>,\n <column c_int_b, type bigint>,\n <column c_double_a, type double>,\n <column c_double_b, type double>,\n <column c_string_a, type string>,\n <column c_string_b, type string>,\n <column c_bool_a, type boolean>,\n <column c_bool_b, type boolean>,\n <column c_datetime_a, type datetime>,\n <column c_datetime_b, type datetime>]\n\nDataFrame API\n-------------\n\n.. code:: python\n\n >>> from odps.df import DataFrame\n >>> df = DataFrame(o.get_table('pyodps_iris'))\n >>> df.dtypes\n odps.Schema {\n sepallength float64\n sepalwidth float64\n petallength float64\n petalwidth float64\n name string\n }\n >>> df.head(5)\n |==========================================| 1 / 1 (100.00%) 0s\n sepallength sepalwidth petallength petalwidth name\n 0 5.1 3.5 1.4 0.2 Iris-setosa\n 1 4.9 3.0 1.4 0.2 Iris-setosa\n 2 4.7 3.2 1.3 0.2 Iris-setosa\n 3 4.6 3.1 1.5 0.2 Iris-setosa\n 4 5.0 3.6 1.4 0.2 Iris-setosa\n >>> df[df.sepalwidth > 3]['name', 'sepalwidth'].head(5)\n |==========================================| 1 / 1 (100.00%) 12s\n name sepalwidth\n 0 Iris-setosa 3.5\n 1 Iris-setosa 3.2\n 2 Iris-setosa 3.1\n 3 Iris-setosa 3.6\n 4 Iris-setosa 3.9\n\nCommand-line and IPython enhancement\n------------------------------------\n\n::\n\n In [1]: %load_ext odps\n\n In [2]: %enter\n Out[2]: <odps.inter.Room at 0x10fe0e450>\n\n In [3]: %sql select * from pyodps_iris limit 5\n |==========================================| 1 / 1 (100.00%) 2s\n Out[3]:\n sepallength sepalwidth petallength petalwidth name\n 0 5.1 3.5 1.4 0.2 Iris-setosa\n 1 4.9 3.0 1.4 0.2 Iris-setosa\n 2 4.7 3.2 1.3 0.2 Iris-setosa\n 3 4.6 3.1 1.5 0.2 Iris-setosa\n 4 5.0 3.6 1.4 0.2 Iris-setosa\n\nPython UDF Debugging Tool\n-------------------------\n\n.. code:: python\n\n #file: plus.py\n from odps.udf import annotate\n\n @annotate('bigint,bigint->bigint')\n class Plus(object):\n def evaluate(self, a, b):\n return a + b\n\n::\n\n $ cat plus.input\n 1,1\n 3,2\n $ pyou plus.Plus < plus.input\n 2\n 5\n\nContributing\n------------\n\nFor a development install, clone the repository and then install from\nsource:\n\n::\n\n git clone https://github.com/aliyun/aliyun-odps-python-sdk.git\n cd pyodps\n pip install -r requirements.txt -e .\n\nIf you need to modify the frontend code, you need to install\n`nodejs/npm <https://www.npmjs.com/>`__. To build and install your\nfrontend code, use\n\n::\n\n python setup.py build_js\n python setup.py install_js\n\nLicense\n-------\n\nLicensed under the `Apache License\n2.0 <https://www.apache.org/licenses/LICENSE-2.0.html>`__\n\n.. |PyPI version| image:: https://img.shields.io/pypi/v/pyodps.svg?style=flat-square\n :target: https://pypi.python.org/pypi/pyodps\n.. |Docs| image:: https://img.shields.io/badge/docs-latest-brightgreen.svg?style=flat-square\n :target: http://pyodps.readthedocs.org/\n.. |License| image:: https://img.shields.io/pypi/l/pyodps.svg?style=flat-square\n :target: https://github.com/aliyun/aliyun-odps-python-sdk/blob/master/License\n.. |Implementation| image:: https://img.shields.io/pypi/implementation/pyodps.svg?style=flat-square\n\n",
"bugtrack_url": null,
"license": "Apache License 2.0",
"summary": "ODPS Python SDK and data analysis framework",
"version": "0.11.6",
"project_urls": {
"Homepage": "http://github.com/aliyun/aliyun-odps-python-sdk"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "141c2c33cf3e11dd45ba904c0e8e409063dc5a6530fd84c9943563ef3e05efed",
"md5": "31732bbf420bec45ea5cbca8c3366c68",
"sha256": "44fe6b62e62da95547551090fef28d4f7facc0d0180cbe1cb489377c11d0ff3d"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp27-cp27m-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "31732bbf420bec45ea5cbca8c3366c68",
"packagetype": "bdist_wheel",
"python_version": "cp27",
"requires_python": null,
"size": 2077431,
"upload_time": "2024-04-17T02:00:43",
"upload_time_iso_8601": "2024-04-17T02:00:43.405227Z",
"url": "https://files.pythonhosted.org/packages/14/1c/2c33cf3e11dd45ba904c0e8e409063dc5a6530fd84c9943563ef3e05efed/pyodps-0.11.6-cp27-cp27m-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "31e3e5c42707280cea7a24652494f5147856e8227682d6ddbe7bcf5a831cbb02",
"md5": "2ab0de4db6d79413592f98cd61f8e13b",
"sha256": "09f21b0462e3ca1e6c0614f9d53a72d0a6115943f74906e1cc2689d7ef2fbf11"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp27-cp27m-manylinux1_x86_64.whl",
"has_sig": false,
"md5_digest": "2ab0de4db6d79413592f98cd61f8e13b",
"packagetype": "bdist_wheel",
"python_version": "cp27",
"requires_python": null,
"size": 4195805,
"upload_time": "2024-04-17T01:56:03",
"upload_time_iso_8601": "2024-04-17T01:56:03.687405Z",
"url": "https://files.pythonhosted.org/packages/31/e3/e5c42707280cea7a24652494f5147856e8227682d6ddbe7bcf5a831cbb02/pyodps-0.11.6-cp27-cp27m-manylinux1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0472025d07a7d06e99b6911038064a4779fa1821b6ada9a98020a9eeb8171825",
"md5": "b6c02dbed9a44ceff66d3af459cf0265",
"sha256": "c350540d0ec10c334f61233d404eda4ea5b87dd478eaa97e865f2d1f77c495cb"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp27-cp27mu-manylinux1_x86_64.whl",
"has_sig": false,
"md5_digest": "b6c02dbed9a44ceff66d3af459cf0265",
"packagetype": "bdist_wheel",
"python_version": "cp27",
"requires_python": null,
"size": 4194158,
"upload_time": "2024-04-17T01:56:07",
"upload_time_iso_8601": "2024-04-17T01:56:07.234237Z",
"url": "https://files.pythonhosted.org/packages/04/72/025d07a7d06e99b6911038064a4779fa1821b6ada9a98020a9eeb8171825/pyodps-0.11.6-cp27-cp27mu-manylinux1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3e9ba6e710e94812f7b7a2da7a8d7e581daed0d8715e49cf9936b9c2d4e3fa12",
"md5": "a3d98b61bc54c663ecbbe7f31404c99d",
"sha256": "25a48dc46a6f1e5ff875966db1d7f8d546b029300a95addbb0e170295549544c"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp310-cp310-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "a3d98b61bc54c663ecbbe7f31404c99d",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 2283253,
"upload_time": "2024-04-17T02:01:08",
"upload_time_iso_8601": "2024-04-17T02:01:08.198803Z",
"url": "https://files.pythonhosted.org/packages/3e/9b/a6e710e94812f7b7a2da7a8d7e581daed0d8715e49cf9936b9c2d4e3fa12/pyodps-0.11.6-cp310-cp310-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5720fc8fd197d09700645d1af66bc844c8a41760b7e054b25149bb40bd8a96ae",
"md5": "5e816ccd94695aadfc8de76fbd613ae2",
"sha256": "dab3f0cf3d9f2bcd6ca02e00124600ca0f6961758592d2d259dccc3bcabe6c83"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp310-cp310-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "5e816ccd94695aadfc8de76fbd613ae2",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 1841376,
"upload_time": "2024-04-17T02:00:46",
"upload_time_iso_8601": "2024-04-17T02:00:46.777662Z",
"url": "https://files.pythonhosted.org/packages/57/20/fc8fd197d09700645d1af66bc844c8a41760b7e054b25149bb40bd8a96ae/pyodps-0.11.6-cp310-cp310-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5116596bcd36cc294edb1eeb6e49ae778290742d435d207209a51cdbabfc68d8",
"md5": "0abce7e6bf1561d2194a84d5ad4334c9",
"sha256": "13186d634ca3489faf0c22e906598efdc8f3a4a9f68223520aa66ad19d2fa4cf"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "0abce7e6bf1561d2194a84d5ad4334c9",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 3959548,
"upload_time": "2024-04-17T01:56:09",
"upload_time_iso_8601": "2024-04-17T01:56:09.658409Z",
"url": "https://files.pythonhosted.org/packages/51/16/596bcd36cc294edb1eeb6e49ae778290742d435d207209a51cdbabfc68d8/pyodps-0.11.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ad384a908cffda05f62eea9e07982023ea7dd1cd91bf46d0210118882fa61076",
"md5": "8661908a01edf43afb423dceac3fd9e6",
"sha256": "00251dc9c01ba160797c6d9fc838a3f3cb6bbfbd1b4165d81bdafe3ee16ed9f7"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp311-cp311-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "8661908a01edf43afb423dceac3fd9e6",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 2285513,
"upload_time": "2024-04-17T02:01:10",
"upload_time_iso_8601": "2024-04-17T02:01:10.574063Z",
"url": "https://files.pythonhosted.org/packages/ad/38/4a908cffda05f62eea9e07982023ea7dd1cd91bf46d0210118882fa61076/pyodps-0.11.6-cp311-cp311-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b4940b4e9d7a0483983f284404ddc24d7f7dc086d8eaed1e76dd1955fe6e3064",
"md5": "31185a1e4eab3109e684491cd44de1cf",
"sha256": "7db651f74447baac5d0eca7b3962675d88c95dc1f7663d67e312035736cace10"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp311-cp311-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "31185a1e4eab3109e684491cd44de1cf",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 1842386,
"upload_time": "2024-04-17T02:00:48",
"upload_time_iso_8601": "2024-04-17T02:00:48.851756Z",
"url": "https://files.pythonhosted.org/packages/b4/94/0b4e9d7a0483983f284404ddc24d7f7dc086d8eaed1e76dd1955fe6e3064/pyodps-0.11.6-cp311-cp311-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c4f336bb27dbf06cab1b9e8afc05a8bed5d1e9c0868babf37dbaf1df080dcb41",
"md5": "e3341aaa012fa7d806db022468e0852d",
"sha256": "59110367ede5da2e6b118e9ed3296a2979fd042adec2c0718d09f84251429db7"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "e3341aaa012fa7d806db022468e0852d",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 4196796,
"upload_time": "2024-04-17T01:56:11",
"upload_time_iso_8601": "2024-04-17T01:56:11.989147Z",
"url": "https://files.pythonhosted.org/packages/c4/f3/36bb27dbf06cab1b9e8afc05a8bed5d1e9c0868babf37dbaf1df080dcb41/pyodps-0.11.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9b9d11c1f5e5807dfd03c23656b0b585c0dc5815fcb2ca9c63df5cb652b7a2ca",
"md5": "9a10f5e07531c2fe62751c80cf8e4977",
"sha256": "043d3250cea014a017e9a67c986175ec343063d2432a08b9e63eaa36a835f6aa"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp35-cp35m-manylinux1_x86_64.whl",
"has_sig": false,
"md5_digest": "9a10f5e07531c2fe62751c80cf8e4977",
"packagetype": "bdist_wheel",
"python_version": "cp35",
"requires_python": null,
"size": 4465598,
"upload_time": "2024-04-17T01:56:13",
"upload_time_iso_8601": "2024-04-17T01:56:13.631294Z",
"url": "https://files.pythonhosted.org/packages/9b/9d/11c1f5e5807dfd03c23656b0b585c0dc5815fcb2ca9c63df5cb652b7a2ca/pyodps-0.11.6-cp35-cp35m-manylinux1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b948262c4da34a580e575bca2fa473dc7af8157eafb94625fae73486ee85106d",
"md5": "4d7ab40da71425f6fd5c34a8ee544794",
"sha256": "9c239ec559078c11a041d9798537a230f07d26dbdb0e53a44f9cfa9f1e71fd3d"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp36-cp36m-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "4d7ab40da71425f6fd5c34a8ee544794",
"packagetype": "bdist_wheel",
"python_version": "cp36",
"requires_python": null,
"size": 2141386,
"upload_time": "2024-04-17T02:00:51",
"upload_time_iso_8601": "2024-04-17T02:00:51.460123Z",
"url": "https://files.pythonhosted.org/packages/b9/48/262c4da34a580e575bca2fa473dc7af8157eafb94625fae73486ee85106d/pyodps-0.11.6-cp36-cp36m-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "cea2c0d0b24e6048c1d474b76a6b369ee001ab9e58ed7fbc9ea8e9d3d04453ea",
"md5": "4169ac3310ff8743a452f36bd71355d2",
"sha256": "ab63f014eedfce94876548df22bdc77a201e21004e15212fb8aa224aaa0e1b6c"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp36-cp36m-manylinux1_x86_64.whl",
"has_sig": false,
"md5_digest": "4169ac3310ff8743a452f36bd71355d2",
"packagetype": "bdist_wheel",
"python_version": "cp36",
"requires_python": null,
"size": 4551294,
"upload_time": "2024-04-17T01:56:16",
"upload_time_iso_8601": "2024-04-17T01:56:16.133755Z",
"url": "https://files.pythonhosted.org/packages/ce/a2/c0d0b24e6048c1d474b76a6b369ee001ab9e58ed7fbc9ea8e9d3d04453ea/pyodps-0.11.6-cp36-cp36m-manylinux1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0b6dda091c542fd3fb5fd5b68a6268b66e46eb6fe6276e0ea25e606aec556006",
"md5": "5b8838ec69694d3376b71741b67907f5",
"sha256": "74161c2aee903c916e3ebf87b873bb8b6b380ba2cf0b3cbb910be61ea0bfb1db"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp37-cp37m-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "5b8838ec69694d3376b71741b67907f5",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 2165681,
"upload_time": "2024-04-17T02:00:53",
"upload_time_iso_8601": "2024-04-17T02:00:53.617024Z",
"url": "https://files.pythonhosted.org/packages/0b/6d/da091c542fd3fb5fd5b68a6268b66e46eb6fe6276e0ea25e606aec556006/pyodps-0.11.6-cp37-cp37m-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4b8f481bcdc64e3fc0ef20b8ce0716b27614a17dd8c12318a8d0835eb2e6356e",
"md5": "0d9b0522de8680f9038883881c62e58b",
"sha256": "5a9bc2097859615c690594515582e063597d6f5b4ad9d9c089ee1cf153db5eb5"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp37-cp37m-manylinux1_x86_64.whl",
"has_sig": false,
"md5_digest": "0d9b0522de8680f9038883881c62e58b",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 4731328,
"upload_time": "2024-04-17T01:56:18",
"upload_time_iso_8601": "2024-04-17T01:56:18.699461Z",
"url": "https://files.pythonhosted.org/packages/4b/8f/481bcdc64e3fc0ef20b8ce0716b27614a17dd8c12318a8d0835eb2e6356e/pyodps-0.11.6-cp37-cp37m-manylinux1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6f6e4e5ce468857bab8b63ea6d84f6af8eba7a62bf5aed2f7c07ac673d722b9f",
"md5": "e7b968f722d54095ec719dade92eecbd",
"sha256": "ad3b09b4818c5a54f17885c1c14bac54e2c0b8ca8a2590c8b328e2a7b1376fc8"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp38-cp38-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "e7b968f722d54095ec719dade92eecbd",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": null,
"size": 1848232,
"upload_time": "2024-04-17T02:00:55",
"upload_time_iso_8601": "2024-04-17T02:00:55.187966Z",
"url": "https://files.pythonhosted.org/packages/6f/6e/4e5ce468857bab8b63ea6d84f6af8eba7a62bf5aed2f7c07ac673d722b9f/pyodps-0.11.6-cp38-cp38-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0df17a9f1113dca4e2227dae2eeb7133ced23465e5549dfed957a0f90d409f22",
"md5": "32ccd150b5fd197841c9a0ceba5d7eb0",
"sha256": "909418cb1e7e5f8b63d099d2d14efd00b986ec3e23a5916e74cd2155df233974"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp38-cp38-manylinux1_x86_64.whl",
"has_sig": false,
"md5_digest": "32ccd150b5fd197841c9a0ceba5d7eb0",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": null,
"size": 3458375,
"upload_time": "2024-04-17T01:56:20",
"upload_time_iso_8601": "2024-04-17T01:56:20.823269Z",
"url": "https://files.pythonhosted.org/packages/0d/f1/7a9f1113dca4e2227dae2eeb7133ced23465e5549dfed957a0f90d409f22/pyodps-0.11.6-cp38-cp38-manylinux1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6df1adf303adf6267924201e9f75be91a5c29747df3341d1cc3d795150cb3c0b",
"md5": "f4a0ae1f856d8ad02040b89bcf4e1962",
"sha256": "b0d5d957135c6a4725c1ee2083e60070da5cc2d9ff840859e49224e60b567ea9"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp39-cp39-macosx_10_9_universal2.whl",
"has_sig": false,
"md5_digest": "f4a0ae1f856d8ad02040b89bcf4e1962",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 2294124,
"upload_time": "2024-04-17T02:01:12",
"upload_time_iso_8601": "2024-04-17T02:01:12.743272Z",
"url": "https://files.pythonhosted.org/packages/6d/f1/adf303adf6267924201e9f75be91a5c29747df3341d1cc3d795150cb3c0b/pyodps-0.11.6-cp39-cp39-macosx_10_9_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6463621a851f303407040fd4a96373428a8d52259621e84b0264f90103435ff4",
"md5": "976c3918430fb4d43ac13d19674ed813",
"sha256": "07c08e6ffb7f2ba400bc1754f4d135d20149d8a83913767a9c64ab7a1b0e0eff"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp39-cp39-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "976c3918430fb4d43ac13d19674ed813",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 1846510,
"upload_time": "2024-04-17T02:00:57",
"upload_time_iso_8601": "2024-04-17T02:00:57.368264Z",
"url": "https://files.pythonhosted.org/packages/64/63/621a851f303407040fd4a96373428a8d52259621e84b0264f90103435ff4/pyodps-0.11.6-cp39-cp39-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9223940679d654e302cc2f82efcdb31f6f30783fdd34861d9ab42271a47e4ff9",
"md5": "44e80d4edc467d7c925b97651b853e10",
"sha256": "0ce41be1a5028a8ed34996350bbd288935dc8699ea666abea7c47aee7e37001f"
},
"downloads": -1,
"filename": "pyodps-0.11.6-cp39-cp39-manylinux1_x86_64.whl",
"has_sig": false,
"md5_digest": "44e80d4edc467d7c925b97651b853e10",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 3334883,
"upload_time": "2024-04-17T01:56:23",
"upload_time_iso_8601": "2024-04-17T01:56:23.192986Z",
"url": "https://files.pythonhosted.org/packages/92/23/940679d654e302cc2f82efcdb31f6f30783fdd34861d9ab42271a47e4ff9/pyodps-0.11.6-cp39-cp39-manylinux1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "729b4de67dc9973497069dfecc866329dfa8ae6075e78cbac1e2a3e40bf7a511",
"md5": "e83a43982e44eb84784d1a346102c1ad",
"sha256": "57bf12a21e75fc2cf6ee22e66136a9a846b26fcfc9d92ed244e9f2d390a42b09"
},
"downloads": -1,
"filename": "pyodps-0.11.6.tar.gz",
"has_sig": false,
"md5_digest": "e83a43982e44eb84784d1a346102c1ad",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 1124714,
"upload_time": "2024-04-17T01:56:25",
"upload_time_iso_8601": "2024-04-17T01:56:25.761654Z",
"url": "https://files.pythonhosted.org/packages/72/9b/4de67dc9973497069dfecc866329dfa8ae6075e78cbac1e2a3e40bf7a511/pyodps-0.11.6.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-17 01:56:25",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "aliyun",
"github_project": "aliyun-odps-python-sdk",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "requests",
"specs": [
[
">=",
"2.4.0"
]
]
},
{
"name": "pyarrow",
"specs": [
[
">=",
"0.16.0"
]
]
},
{
"name": "pyarrow",
"specs": [
[
">=",
"2.0.0"
]
]
}
],
"lcname": "pyodps"
}