Created
March 17, 2021 20:18
-
-
Save neuromusic/274a662c15d54d3fafec624e3659ebf5 to your computer and use it in GitHub Desktop.
script to pull napari plugin info from pypi
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| "cells": [ | |
| { | |
| "cell_type": "code", | |
| "execution_count": 3, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "packages = [\n", | |
| " 'napari-aicsimageio',\n", | |
| " 'affinder',\n", | |
| " 'napping',\n", | |
| " 'napari-pyclesperanto-assistant',\n", | |
| " 'napari-cellfinder',\n", | |
| " 'napari-btrack-reader',\n", | |
| " 'napari-nikon-nd2',\n", | |
| " 'napari-hdf5-labels-io',\n", | |
| " 'napari-demo',\n", | |
| " 'brainreg-segment',\n", | |
| " 'cellfinder-napari',\n", | |
| " 'napari-compressed-labels-io',\n", | |
| " 'napari-console',\n", | |
| " 'brainglobe-napari-io',\n", | |
| " 'napari-em-reader',\n", | |
| " 'napari-brainreg',\n", | |
| " 'napari-czifile2',\n", | |
| " 'napari-lazy-openslide',\n", | |
| " 'PartSeg',\n", | |
| " 'napari-dv',\n", | |
| " 'napari-dzi-zarr',\n", | |
| " 'napari_video',\n", | |
| " 'nd2-dask',\n", | |
| " 'ome-zarr',\n", | |
| " 'napari-imc'\n", | |
| "]" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 6, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "25" | |
| ] | |
| }, | |
| "execution_count": 6, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "len(packages)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 84, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "package = packages[0]" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 85, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "url_template = \"https://pypi.org/pypi/{}/json\"" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 86, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "'https://pypi.org/pypi/napari-aicsimageio/json'" | |
| ] | |
| }, | |
| "execution_count": 86, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "url_template.format(package)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 87, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "{\n", | |
| " \"info\": {\n", | |
| " \"author\": \"Jackson Maxfield Brown\",\n", | |
| " \"author_email\": \"jmaxfieldbrown@gmail.com\",\n", | |
| " \"bugtrack_url\": null,\n", | |
| " \"classifiers\": [\n", | |
| " \"Development Status :: 5 - Production/Stable\",\n", | |
| " \"Framework :: napari\",\n", | |
| " \"Intended Audience :: Science/Research\",\n", | |
| " \"License :: OSI Approved :: BSD License\",\n", | |
| " \"Natural Language :: English\",\n", | |
| " \"Programming Language :: Python :: 3.7\",\n", | |
| " \"Programming Language :: Python :: 3.8\",\n", | |
| " \"Programming Language :: Python :: 3.9\",\n", | |
| " \"Topic :: Scientific/Engineering\",\n", | |
| " \"Topic :: Scientific/Engineering :: Bio-Informatics\",\n", | |
| " \"Topic :: Scientific/Engineering :: Information Analysis\",\n", | |
| " \"Topic :: Scientific/Engineering :: Visualization\"\n", | |
| " ],\n", | |
| " \"description\": \"# napari-aicsimageio\\n\\n[](https://github.com/AllenCellModeling/napari-aicsimageio/actions)\\n[](https://codecov.io/gh/AllenCellModeling/napari-aicsimageio)\\n\\nAICSImageIO bindings for napari\\n\\n---\\n\\n## Features\\n* Supports reading metadata and imaging data for:\\n * `CZI`\\n * `OME-TIFF`\\n * `TIFF`\\n * Any formats supported by [aicsimageio](https://github.com/AllenCellModeling/aicsimageio)\\n * Any additional format supported by [imageio](https://github.com/imageio/imageio)\\n* Two variants of the AICSImageIO bindings:\\n * `aicsimageio`, which reads the image fully into memory\\n * `aicsimageio-delayed`, which delays reading YX planes until requested for large file support\\n\\n## Installation\\n**Stable Release:** `pip install napari-aicsimageio`<br>\\n**Development Head:** `pip install git+https://github.com/AllenCellModeling/napari-aicsimageio.git`\\n\\n## Development\\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for information related to developing the code.\\n\\n***Free software: BSD-3-Clause***\\n\\n\\n\",\n", | |
| " \"description_content_type\": \"text/markdown\",\n", | |
| " \"docs_url\": null,\n", | |
| " \"download_url\": \"\",\n", | |
| " \"downloads\": {\n", | |
| " \"last_day\": -1,\n", | |
| " \"last_month\": -1,\n", | |
| " \"last_week\": -1\n", | |
| " },\n", | |
| " \"home_page\": \"https://github.com/AllenCellModeling/napari-aicsimageio\",\n", | |
| " \"keywords\": \"napari,aicsimageio,imaging\",\n", | |
| " \"license\": \"BSD-3-Clause\",\n", | |
| " \"maintainer\": \"\",\n", | |
| " \"maintainer_email\": \"\",\n", | |
| " \"name\": \"napari-aicsimageio\",\n", | |
| " \"package_url\": \"https://pypi.org/project/napari-aicsimageio/\",\n", | |
| " \"platform\": \"\",\n", | |
| " \"project_url\": \"https://pypi.org/project/napari-aicsimageio/\",\n", | |
| " \"project_urls\": {\n", | |
| " \"Homepage\": \"https://github.com/AllenCellModeling/napari-aicsimageio\"\n", | |
| " },\n", | |
| " \"release_url\": \"https://pypi.org/project/napari-aicsimageio/0.2.0/\",\n", | |
| " \"requires_dist\": [\n", | |
| " \"aicsimageio (>=3.3.3)\",\n", | |
| " \"napari-plugin-engine (>=0.1.4)\",\n", | |
| " \"aicsimageio (>=3.3.3) ; extra == 'all'\",\n", | |
| " \"napari-plugin-engine (>=0.1.4) ; extra == 'all'\",\n", | |
| " \"pytest-runner (>=5.2) ; extra == 'all'\",\n", | |
| " \"black (>=19.10b0) ; extra == 'all'\",\n", | |
| " \"codecov (>=2.1.4) ; extra == 'all'\",\n", | |
| " \"flake8 (>=3.8.3) ; extra == 'all'\",\n", | |
| " \"flake8-debugger (>=3.2.1) ; extra == 'all'\",\n", | |
| " \"napari[pyqt5] (>=0.3.0) ; extra == 'all'\",\n", | |
| " \"pytest (>=5.4.3) ; extra == 'all'\",\n", | |
| " \"pytest-cov (>=2.9.0) ; extra == 'all'\",\n", | |
| " \"pytest-raises (>=0.11) ; extra == 'all'\",\n", | |
| " \"bumpversion (>=0.6.0) ; extra == 'all'\",\n", | |
| " \"coverage (>=5.1) ; extra == 'all'\",\n", | |
| " \"ipython (>=7.15.0) ; extra == 'all'\",\n", | |
| " \"m2r (>=0.2.1) ; extra == 'all'\",\n", | |
| " \"Sphinx (<3,>=2.0.0b1) ; extra == 'all'\",\n", | |
| " \"sphinx-rtd-theme (>=0.4.3) ; extra == 'all'\",\n", | |
| " \"tox (>=3.15.2) ; extra == 'all'\",\n", | |
| " \"twine (>=3.1.1) ; extra == 'all'\",\n", | |
| " \"wheel (>=0.34.2) ; extra == 'all'\",\n", | |
| " \"pytest-runner (>=5.2) ; extra == 'dev'\",\n", | |
| " \"black (>=19.10b0) ; extra == 'dev'\",\n", | |
| " \"codecov (>=2.1.4) ; extra == 'dev'\",\n", | |
| " \"flake8 (>=3.8.3) ; extra == 'dev'\",\n", | |
| " \"flake8-debugger (>=3.2.1) ; extra == 'dev'\",\n", | |
| " \"napari[pyqt5] (>=0.3.0) ; extra == 'dev'\",\n", | |
| " \"pytest (>=5.4.3) ; extra == 'dev'\",\n", | |
| " \"pytest-cov (>=2.9.0) ; extra == 'dev'\",\n", | |
| " \"pytest-raises (>=0.11) ; extra == 'dev'\",\n", | |
| " \"bumpversion (>=0.6.0) ; extra == 'dev'\",\n", | |
| " \"coverage (>=5.1) ; extra == 'dev'\",\n", | |
| " \"ipython (>=7.15.0) ; extra == 'dev'\",\n", | |
| " \"m2r (>=0.2.1) ; extra == 'dev'\",\n", | |
| " \"Sphinx (<3,>=2.0.0b1) ; extra == 'dev'\",\n", | |
| " \"sphinx-rtd-theme (>=0.4.3) ; extra == 'dev'\",\n", | |
| " \"tox (>=3.15.2) ; extra == 'dev'\",\n", | |
| " \"twine (>=3.1.1) ; extra == 'dev'\",\n", | |
| " \"wheel (>=0.34.2) ; extra == 'dev'\",\n", | |
| " \"pytest-runner (>=5.2) ; extra == 'setup'\",\n", | |
| " \"black (>=19.10b0) ; extra == 'test'\",\n", | |
| " \"codecov (>=2.1.4) ; extra == 'test'\",\n", | |
| " \"flake8 (>=3.8.3) ; extra == 'test'\",\n", | |
| " \"flake8-debugger (>=3.2.1) ; extra == 'test'\",\n", | |
| " \"napari[pyqt5] (>=0.3.0) ; extra == 'test'\",\n", | |
| " \"pytest (>=5.4.3) ; extra == 'test'\",\n", | |
| " \"pytest-cov (>=2.9.0) ; extra == 'test'\",\n", | |
| " \"pytest-raises (>=0.11) ; extra == 'test'\"\n", | |
| " ],\n", | |
| " \"requires_python\": \">=3.7\",\n", | |
| " \"summary\": \"AICSImageIO bindings for napari\",\n", | |
| " \"version\": \"0.2.0\",\n", | |
| " \"yanked\": false,\n", | |
| " \"yanked_reason\": null\n", | |
| " },\n", | |
| " \"last_serial\": 8893371,\n", | |
| " \"releases\": {\n", | |
| " \"0.1.0\": [\n", | |
| " {\n", | |
| " \"comment_text\": \"\",\n", | |
| " \"digests\": {\n", | |
| " \"md5\": \"0d557e84dab5589fe4ee7b897d1a32cb\",\n", | |
| " \"sha256\": \"824dfceccc436d3f589ceb77c49df3a9bd04851e62aa3c171901f19401b0a4b3\"\n", | |
| " },\n", | |
| " \"downloads\": -1,\n", | |
| " \"filename\": \"napari_aicsimageio-0.1.0-py2.py3-none-any.whl\",\n", | |
| " \"has_sig\": false,\n", | |
| " \"md5_digest\": \"0d557e84dab5589fe4ee7b897d1a32cb\",\n", | |
| " \"packagetype\": \"bdist_wheel\",\n", | |
| " \"python_version\": \"py2.py3\",\n", | |
| " \"requires_python\": \">=3.6\",\n", | |
| " \"size\": 6530,\n", | |
| " \"upload_time\": \"2020-03-26T20:10:54\",\n", | |
| " \"upload_time_iso_8601\": \"2020-03-26T20:10:54.889461Z\",\n", | |
| " \"url\": \"https://files.pythonhosted.org/packages/d4/66/bf0c7912cc7a6ff099b8a1f98c6ffe0727e79c12bd5f4e389d745862e35d/napari_aicsimageio-0.1.0-py2.py3-none-any.whl\",\n", | |
| " \"yanked\": false,\n", | |
| " \"yanked_reason\": null\n", | |
| " },\n", | |
| " {\n", | |
| " \"comment_text\": \"\",\n", | |
| " \"digests\": {\n", | |
| " \"md5\": \"22ab10e0b0481352a85f26730b971b59\",\n", | |
| " \"sha256\": \"4374eda8bf6a2a60b3bdd5ca580cff8a747262f1c338e40401a986d6e0e32e05\"\n", | |
| " },\n", | |
| " \"downloads\": -1,\n", | |
| " \"filename\": \"napari-aicsimageio-0.1.0.tar.gz\",\n", | |
| " \"has_sig\": false,\n", | |
| " \"md5_digest\": \"22ab10e0b0481352a85f26730b971b59\",\n", | |
| " \"packagetype\": \"sdist\",\n", | |
| " \"python_version\": \"source\",\n", | |
| " \"requires_python\": \">=3.6\",\n", | |
| " \"size\": 6257,\n", | |
| " \"upload_time\": \"2020-03-26T20:10:57\",\n", | |
| " \"upload_time_iso_8601\": \"2020-03-26T20:10:57.858112Z\",\n", | |
| " \"url\": \"https://files.pythonhosted.org/packages/d4/1b/c4f9006396c3935226fe294696e8e72b8e629731f008a5c8b4602bda8f19/napari-aicsimageio-0.1.0.tar.gz\",\n", | |
| " \"yanked\": false,\n", | |
| " \"yanked_reason\": null\n", | |
| " }\n", | |
| " ],\n", | |
| " \"0.1.1\": [\n", | |
| " {\n", | |
| " \"comment_text\": \"\",\n", | |
| " \"digests\": {\n", | |
| " \"md5\": \"93faead6eaf30ea1f5ecb9d64775da5a\",\n", | |
| " \"sha256\": \"72e8a4ac4d3dff569686d39ea6bdcd60158dbe64eab0d83685f799a7999e870e\"\n", | |
| " },\n", | |
| " \"downloads\": -1,\n", | |
| " \"filename\": \"napari_aicsimageio-0.1.1-py2.py3-none-any.whl\",\n", | |
| " \"has_sig\": false,\n", | |
| " \"md5_digest\": \"93faead6eaf30ea1f5ecb9d64775da5a\",\n", | |
| " \"packagetype\": \"bdist_wheel\",\n", | |
| " \"python_version\": \"py2.py3\",\n", | |
| " \"requires_python\": \">=3.6\",\n", | |
| " \"size\": 6565,\n", | |
| " \"upload_time\": \"2020-04-28T19:51:47\",\n", | |
| " \"upload_time_iso_8601\": \"2020-04-28T19:51:47.729723Z\",\n", | |
| " \"url\": \"https://files.pythonhosted.org/packages/c3/8e/12638b457f8a4223bf3c34d0ac9b2d8a36b9dd098e02685c8f0928514155/napari_aicsimageio-0.1.1-py2.py3-none-any.whl\",\n", | |
| " \"yanked\": false,\n", | |
| " \"yanked_reason\": null\n", | |
| " },\n", | |
| " {\n", | |
| " \"comment_text\": \"\",\n", | |
| " \"digests\": {\n", | |
| " \"md5\": \"1059ee4ce0d85ab9729a80f5e566dd46\",\n", | |
| " \"sha256\": \"66d68a04cb1e5b3758a5cef02e91eaf77019d73f3194d64b11ee810d8f7dd6cc\"\n", | |
| " },\n", | |
| " \"downloads\": -1,\n", | |
| " \"filename\": \"napari-aicsimageio-0.1.1.tar.gz\",\n", | |
| " \"has_sig\": false,\n", | |
| " \"md5_digest\": \"1059ee4ce0d85ab9729a80f5e566dd46\",\n", | |
| " \"packagetype\": \"sdist\",\n", | |
| " \"python_version\": \"source\",\n", | |
| " \"requires_python\": \">=3.6\",\n", | |
| " \"size\": 6408,\n", | |
| " \"upload_time\": \"2020-04-28T19:51:48\",\n", | |
| " \"upload_time_iso_8601\": \"2020-04-28T19:51:48.692757Z\",\n", | |
| " \"url\": \"https://files.pythonhosted.org/packages/31/6e/f270a5668b74a155dbeb7ee3e4a6c18797714961fd87bce81b40c577ceff/napari-aicsimageio-0.1.1.tar.gz\",\n", | |
| " \"yanked\": false,\n", | |
| " \"yanked_reason\": null\n", | |
| " }\n", | |
| " ],\n", | |
| " \"0.1.2\": [\n", | |
| " {\n", | |
| " \"comment_text\": \"\",\n", | |
| " \"digests\": {\n", | |
| " \"md5\": \"4393cbdb7fe6dfb0a7b2697fb2cda1c1\",\n", | |
| " \"sha256\": \"ee60bc3d982583edf7a92abd3c5568c01e33d88d1ffc70d669b88e53868343e9\"\n", | |
| " },\n", | |
| " \"downloads\": -1,\n", | |
| " \"filename\": \"napari_aicsimageio-0.1.2-py2.py3-none-any.whl\",\n", | |
| " \"has_sig\": false,\n", | |
| " \"md5_digest\": \"4393cbdb7fe6dfb0a7b2697fb2cda1c1\",\n", | |
| " \"packagetype\": \"bdist_wheel\",\n", | |
| " \"python_version\": \"py2.py3\",\n", | |
| " \"requires_python\": \">=3.6\",\n", | |
| " \"size\": 6664,\n", | |
| " \"upload_time\": \"2020-06-23T19:52:34\",\n", | |
| " \"upload_time_iso_8601\": \"2020-06-23T19:52:34.211176Z\",\n", | |
| " \"url\": \"https://files.pythonhosted.org/packages/8d/4b/5504d12b937358c321cc66e2268a0aa562b1aa5651f5bcd31d9540f9b29c/napari_aicsimageio-0.1.2-py2.py3-none-any.whl\",\n", | |
| " \"yanked\": false,\n", | |
| " \"yanked_reason\": null\n", | |
| " },\n", | |
| " {\n", | |
| " \"comment_text\": \"\",\n", | |
| " \"digests\": {\n", | |
| " \"md5\": \"d1dea35874a3bab84e0909005c916aaf\",\n", | |
| " \"sha256\": \"52da28c7c19b3593adec00c8bee1f991f379205586449d30c33fc56b1ed89bae\"\n", | |
| " },\n", | |
| " \"downloads\": -1,\n", | |
| " \"filename\": \"napari-aicsimageio-0.1.2.tar.gz\",\n", | |
| " \"has_sig\": false,\n", | |
| " \"md5_digest\": \"d1dea35874a3bab84e0909005c916aaf\",\n", | |
| " \"packagetype\": \"sdist\",\n", | |
| " \"python_version\": \"source\",\n", | |
| " \"requires_python\": \">=3.6\",\n", | |
| " \"size\": 6890,\n", | |
| " \"upload_time\": \"2020-06-23T19:52:37\",\n", | |
| " \"upload_time_iso_8601\": \"2020-06-23T19:52:37.021462Z\",\n", | |
| " \"url\": \"https://files.pythonhosted.org/packages/99/d4/2108f5ffde75e7cf44844c8a751e632d4ceafb3162c14932d1437d3bbd71/napari-aicsimageio-0.1.2.tar.gz\",\n", | |
| " \"yanked\": false,\n", | |
| " \"yanked_reason\": null\n", | |
| " }\n", | |
| " ],\n", | |
| " \"0.1.3\": [\n", | |
| " {\n", | |
| " \"comment_text\": \"\",\n", | |
| " \"digests\": {\n", | |
| " \"md5\": \"6fba278a4706d1bc8dbed8e97b623f84\",\n", | |
| " \"sha256\": \"270d5fb9b59b36bb9a52aced90c89ff9369c4c695ef5c8e11208f795bf1d96ab\"\n", | |
| " },\n", | |
| " \"downloads\": -1,\n", | |
| " \"filename\": \"napari_aicsimageio-0.1.3-py2.py3-none-any.whl\",\n", | |
| " \"has_sig\": false,\n", | |
| " \"md5_digest\": \"6fba278a4706d1bc8dbed8e97b623f84\",\n", | |
| " \"packagetype\": \"bdist_wheel\",\n", | |
| " \"python_version\": \"py2.py3\",\n", | |
| " \"requires_python\": \">=3.6\",\n", | |
| " \"size\": 6686,\n", | |
| " \"upload_time\": \"2020-06-24T22:49:20\",\n", | |
| " \"upload_time_iso_8601\": \"2020-06-24T22:49:20.228058Z\",\n", | |
| " \"url\": \"https://files.pythonhosted.org/packages/c4/00/4b1bfa125d0212c2b8f3f3332ebdc3e10435143d541d173b0739866a81a1/napari_aicsimageio-0.1.3-py2.py3-none-any.whl\",\n", | |
| " \"yanked\": false,\n", | |
| " \"yanked_reason\": null\n", | |
| " },\n", | |
| " {\n", | |
| " \"comment_text\": \"\",\n", | |
| " \"digests\": {\n", | |
| " \"md5\": \"c2c4f25927740ac5b777906fbe41cdc1\",\n", | |
| " \"sha256\": \"92b655170fc9677644be02a4f4933e107cc6a9fcc0ea51976a307a410defba54\"\n", | |
| " },\n", | |
| " \"downloads\": -1,\n", | |
| " \"filename\": \"napari-aicsimageio-0.1.3.tar.gz\",\n", | |
| " \"has_sig\": false,\n", | |
| " \"md5_digest\": \"c2c4f25927740ac5b777906fbe41cdc1\",\n", | |
| " \"packagetype\": \"sdist\",\n", | |
| " \"python_version\": \"source\",\n", | |
| " \"requires_python\": \">=3.6\",\n", | |
| " \"size\": 6913,\n", | |
| " \"upload_time\": \"2020-06-24T22:49:21\",\n", | |
| " \"upload_time_iso_8601\": \"2020-06-24T22:49:21.423297Z\",\n", | |
| " \"url\": \"https://files.pythonhosted.org/packages/8b/c7/14ac84229cf127ee9627d46e4a3645ebb8a530ef7d18e44cd30666b7cdfe/napari-aicsimageio-0.1.3.tar.gz\",\n", | |
| " \"yanked\": false,\n", | |
| " \"yanked_reason\": null\n", | |
| " }\n", | |
| " ],\n", | |
| " \"0.2.0\": [\n", | |
| " {\n", | |
| " \"comment_text\": \"\",\n", | |
| " \"digests\": {\n", | |
| " \"md5\": \"d2140c4b74f71af45afa46e0defecea7\",\n", | |
| " \"sha256\": \"fa87d611da53daa5051a244db39b49883917990c12f3a8f5e01b8451a01fbf22\"\n", | |
| " },\n", | |
| " \"downloads\": -1,\n", | |
| " \"filename\": \"napari_aicsimageio-0.2.0-py2.py3-none-any.whl\",\n", | |
| " \"has_sig\": false,\n", | |
| " \"md5_digest\": \"d2140c4b74f71af45afa46e0defecea7\",\n", | |
| " \"packagetype\": \"bdist_wheel\",\n", | |
| " \"python_version\": \"py2.py3\",\n", | |
| " \"requires_python\": \">=3.7\",\n", | |
| " \"size\": 6015,\n", | |
| " \"upload_time\": \"2020-12-14T07:30:26\",\n", | |
| " \"upload_time_iso_8601\": \"2020-12-14T07:30:26.366917Z\",\n", | |
| " \"url\": \"https://files.pythonhosted.org/packages/c5/25/86011a70876e75632d17c2525d48d7221c7cff468cf67dcdd320ed58734b/napari_aicsimageio-0.2.0-py2.py3-none-any.whl\",\n", | |
| " \"yanked\": false,\n", | |
| " \"yanked_reason\": null\n", | |
| " },\n", | |
| " {\n", | |
| " \"comment_text\": \"\",\n", | |
| " \"digests\": {\n", | |
| " \"md5\": \"e0f45c041c0101d63528c42f9564a931\",\n", | |
| " \"sha256\": \"7df8b9756afd92b608f959437814d823d1395242e67ad275b44b105845df2675\"\n", | |
| " },\n", | |
| " \"downloads\": -1,\n", | |
| " \"filename\": \"napari-aicsimageio-0.2.0.tar.gz\",\n", | |
| " \"has_sig\": false,\n", | |
| " \"md5_digest\": \"e0f45c041c0101d63528c42f9564a931\",\n", | |
| " \"packagetype\": \"sdist\",\n", | |
| " \"python_version\": \"source\",\n", | |
| " \"requires_python\": \">=3.7\",\n", | |
| " \"size\": 6272,\n", | |
| " \"upload_time\": \"2020-12-14T07:30:27\",\n", | |
| " \"upload_time_iso_8601\": \"2020-12-14T07:30:27.357730Z\",\n", | |
| " \"url\": \"https://files.pythonhosted.org/packages/74/ea/ec991c7a00366e93de3f2333e999a6db67923d68d541704482269c3826e1/napari-aicsimageio-0.2.0.tar.gz\",\n", | |
| " \"yanked\": false,\n", | |
| " \"yanked_reason\": null\n", | |
| " }\n", | |
| " ]\n", | |
| " },\n", | |
| " \"urls\": [\n", | |
| " {\n", | |
| " \"comment_text\": \"\",\n", | |
| " \"digests\": {\n", | |
| " \"md5\": \"d2140c4b74f71af45afa46e0defecea7\",\n", | |
| " \"sha256\": \"fa87d611da53daa5051a244db39b49883917990c12f3a8f5e01b8451a01fbf22\"\n", | |
| " },\n", | |
| " \"downloads\": -1,\n", | |
| " \"filename\": \"napari_aicsimageio-0.2.0-py2.py3-none-any.whl\",\n", | |
| " \"has_sig\": false,\n", | |
| " \"md5_digest\": \"d2140c4b74f71af45afa46e0defecea7\",\n", | |
| " \"packagetype\": \"bdist_wheel\",\n", | |
| " \"python_version\": \"py2.py3\",\n", | |
| " \"requires_python\": \">=3.7\",\n", | |
| " \"size\": 6015,\n", | |
| " \"upload_time\": \"2020-12-14T07:30:26\",\n", | |
| " \"upload_time_iso_8601\": \"2020-12-14T07:30:26.366917Z\",\n", | |
| " \"url\": \"https://files.pythonhosted.org/packages/c5/25/86011a70876e75632d17c2525d48d7221c7cff468cf67dcdd320ed58734b/napari_aicsimageio-0.2.0-py2.py3-none-any.whl\",\n", | |
| " \"yanked\": false,\n", | |
| " \"yanked_reason\": null\n", | |
| " },\n", | |
| " {\n", | |
| " \"comment_text\": \"\",\n", | |
| " \"digests\": {\n", | |
| " \"md5\": \"e0f45c041c0101d63528c42f9564a931\",\n", | |
| " \"sha256\": \"7df8b9756afd92b608f959437814d823d1395242e67ad275b44b105845df2675\"\n", | |
| " },\n", | |
| " \"downloads\": -1,\n", | |
| " \"filename\": \"napari-aicsimageio-0.2.0.tar.gz\",\n", | |
| " \"has_sig\": false,\n", | |
| " \"md5_digest\": \"e0f45c041c0101d63528c42f9564a931\",\n", | |
| " \"packagetype\": \"sdist\",\n", | |
| " \"python_version\": \"source\",\n", | |
| " \"requires_python\": \">=3.7\",\n", | |
| " \"size\": 6272,\n", | |
| " \"upload_time\": \"2020-12-14T07:30:27\",\n", | |
| " \"upload_time_iso_8601\": \"2020-12-14T07:30:27.357730Z\",\n", | |
| " \"url\": \"https://files.pythonhosted.org/packages/74/ea/ec991c7a00366e93de3f2333e999a6db67923d68d541704482269c3826e1/napari-aicsimageio-0.2.0.tar.gz\",\n", | |
| " \"yanked\": false,\n", | |
| " \"yanked_reason\": null\n", | |
| " }\n", | |
| " ]\n", | |
| "}\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "import json\n", | |
| "from urllib import request\n", | |
| "\n", | |
| "def pprint(data):\n", | |
| " print(json.dumps(data, indent=4, sort_keys=True))\n", | |
| "\n", | |
| " \n", | |
| "def get_package_data(package):\n", | |
| " url = url_template.format(package)\n", | |
| "\n", | |
| " with request.urlopen(url) as f:\n", | |
| " response = f.read()\n", | |
| " data = json.loads(response)\n", | |
| " return data\n", | |
| "\n", | |
| "data = get_package_data(package)\n", | |
| "pprint(data)\n", | |
| " " | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 88, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "queries = {}" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 89, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "'napari-aicsimageio'" | |
| ] | |
| }, | |
| "execution_count": 89, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "def get_name(data):\n", | |
| " return data['info'].get('name',None)\n", | |
| "queries['name'] = get_name\n", | |
| "queries['name'](data)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 90, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "'AICSImageIO bindings for napari'" | |
| ] | |
| }, | |
| "execution_count": 90, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "def get_summary(data):\n", | |
| " return data['info'].get('summary',None)\n", | |
| "queries['summary'] = get_summary\n", | |
| "queries['summary'](data)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 91, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "'# napari-aicsimageio\\n\\n[](https://github.com/AllenCellModeling/napari-aicsimageio/actions)\\n[](https://codecov.io/gh/AllenCellModeling/napari-aicsimageio)\\n\\nAICSImageIO bindings for napari\\n\\n---\\n\\n## Features\\n* Supports reading metadata and imaging data for:\\n * `CZI`\\n * `OME-TIFF`\\n * `TIFF`\\n * Any formats supported by [aicsimageio](https://github.com/AllenCellModeling/aicsimageio)\\n * Any additional format supported by [imageio](https://github.com/imageio/imageio)\\n* Two variants of the AICSImageIO bindings:\\n * `aicsimageio`, which reads the image fully into memory\\n * `aicsimageio-delayed`, which delays reading YX planes until requested for large file support\\n\\n## Installation\\n**Stable Release:** `pip install napari-aicsimageio`<br>\\n**Development Head:** `pip install git+https://github.com/AllenCellModeling/napari-aicsimageio.git`\\n\\n## Development\\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for information related to developing the code.\\n\\n***Free software: BSD-3-Clause***\\n\\n\\n'" | |
| ] | |
| }, | |
| "execution_count": 91, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "def get_description(data):\n", | |
| " return data['info'].get('description',None)\n", | |
| "queries['description'] = get_description\n", | |
| "queries['description'](data)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 92, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "'text/markdown'" | |
| ] | |
| }, | |
| "execution_count": 92, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "def get_description_content_type(data):\n", | |
| " return data['info'].get('description_content_type',None)\n", | |
| "queries['description_content_type'] = get_description_content_type\n", | |
| "queries['description_content_type'](data)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 93, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "'Jackson Maxfield Brown'" | |
| ] | |
| }, | |
| "execution_count": 93, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "def get_author(data):\n", | |
| " return data['info'].get('author',None)\n", | |
| "queries['author'] = get_author\n", | |
| "queries['author'](data)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 94, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "'jmaxfieldbrown@gmail.com'" | |
| ] | |
| }, | |
| "execution_count": 94, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "def get_author_email(data):\n", | |
| " return data['info'].get('author_email',None)\n", | |
| "queries['author_email'] = get_author_email\n", | |
| "queries['author_email'](data)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 95, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "'BSD-3-Clause'" | |
| ] | |
| }, | |
| "execution_count": 95, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "def get_license(data):\n", | |
| " return data['info']['license']\n", | |
| "queries['license'] = get_license\n", | |
| "queries['license'](data)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 96, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "'>=3.7'" | |
| ] | |
| }, | |
| "execution_count": 96, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "def get_python_versions(data):\n", | |
| " return data['info'].get('requires_python',None)\n", | |
| "queries['requires_python'] = get_python_versions\n", | |
| "queries['requires_python'](data)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 97, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "# operating system" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 98, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "['Scientific/Engineering',\n", | |
| " 'Scientific/Engineering :: Bio-Informatics',\n", | |
| " 'Scientific/Engineering :: Information Analysis',\n", | |
| " 'Scientific/Engineering :: Visualization']" | |
| ] | |
| }, | |
| "execution_count": 98, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "# topics\n", | |
| "\n", | |
| "def get_topics(data):\n", | |
| " return [cl[9:] for cl in data['info']['classifiers'] if cl.startswith('Topic')]\n", | |
| " \n", | |
| "queries['topics'] = get_topics\n", | |
| "queries['topics'](data)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 99, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "['aicsimageio',\n", | |
| " 'napari-plugin-engine',\n", | |
| " 'aicsimageio',\n", | |
| " 'napari-plugin-engine',\n", | |
| " 'pytest-runner',\n", | |
| " 'black',\n", | |
| " 'codecov',\n", | |
| " 'flake8',\n", | |
| " 'flake8-debugger',\n", | |
| " 'napari[pyqt5]',\n", | |
| " 'pytest',\n", | |
| " 'pytest-cov',\n", | |
| " 'pytest-raises',\n", | |
| " 'bumpversion',\n", | |
| " 'coverage',\n", | |
| " 'ipython',\n", | |
| " 'm2r',\n", | |
| " 'Sphinx',\n", | |
| " 'sphinx-rtd-theme',\n", | |
| " 'tox',\n", | |
| " 'twine',\n", | |
| " 'wheel',\n", | |
| " 'pytest-runner',\n", | |
| " 'black',\n", | |
| " 'codecov',\n", | |
| " 'flake8',\n", | |
| " 'flake8-debugger',\n", | |
| " 'napari[pyqt5]',\n", | |
| " 'pytest',\n", | |
| " 'pytest-cov',\n", | |
| " 'pytest-raises',\n", | |
| " 'bumpversion',\n", | |
| " 'coverage',\n", | |
| " 'ipython',\n", | |
| " 'm2r',\n", | |
| " 'Sphinx',\n", | |
| " 'sphinx-rtd-theme',\n", | |
| " 'tox',\n", | |
| " 'twine',\n", | |
| " 'wheel',\n", | |
| " 'pytest-runner',\n", | |
| " 'black',\n", | |
| " 'codecov',\n", | |
| " 'flake8',\n", | |
| " 'flake8-debugger',\n", | |
| " 'napari[pyqt5]',\n", | |
| " 'pytest',\n", | |
| " 'pytest-cov',\n", | |
| " 'pytest-raises']" | |
| ] | |
| }, | |
| "execution_count": 99, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "def get_requirements(data):\n", | |
| " return [req.split(' ')[0] for req in data['info'].get('requires_dist',[])]\n", | |
| "queries['requirements'] = get_requirements\n", | |
| "queries['requirements'](data)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 103, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "'https://github.com/AllenCellModeling/napari-aicsimageio'" | |
| ] | |
| }, | |
| "execution_count": 103, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "def get_homepage(data):\n", | |
| " return data['info'].get('home_page',None)\n", | |
| "queries['homepage'] = get_homepage\n", | |
| "queries['homepage'](data)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 112, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "False" | |
| ] | |
| }, | |
| "execution_count": 112, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "'1' < ''" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 131, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "'2020-12-14T07:30:26.366917Z'" | |
| ] | |
| }, | |
| "execution_count": 131, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "def get_latest_release(data):\n", | |
| " latest = {}\n", | |
| " for version, release in data['releases'].items():\n", | |
| " upload_time = release[0]['upload_time_iso_8601']\n", | |
| " if upload_time > latest.get('datetime', ''):\n", | |
| " latest['datetime'] = upload_time\n", | |
| " latest['version'] = version\n", | |
| " return latest\n", | |
| "\n", | |
| "def get_release_date(data):\n", | |
| " return get_latest_release(data)['datetime']\n", | |
| "\n", | |
| "\n", | |
| "queries['release_date'] = get_release_date\n", | |
| "queries['release_date'](data)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 132, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "'0.2.0'" | |
| ] | |
| }, | |
| "execution_count": 132, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "def get_version(data):\n", | |
| " return get_latest_release(data)['version']\n", | |
| "\n", | |
| "queries['version'] = get_version\n", | |
| "queries['version'](data)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 133, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "'2020-03-26T20:10:54.889461Z'" | |
| ] | |
| }, | |
| "execution_count": 133, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "def get_first_released(data): \n", | |
| " first = {}\n", | |
| " for version, release in data['releases'].items():\n", | |
| " upload_time = release[0]['upload_time_iso_8601']\n", | |
| " if upload_time < first.get('datetime', 'X'):\n", | |
| " first['datetime'] = upload_time\n", | |
| " first['verstion'] = version\n", | |
| " return first['datetime']\n", | |
| "\n", | |
| "queries['first_released'] = get_first_released\n", | |
| "queries['first_released'](data)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 138, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "{\n", | |
| " \"author\": \"Jackson Maxfield Brown\",\n", | |
| " \"author_email\": \"jmaxfieldbrown@gmail.com\",\n", | |
| " \"description\": \"# napari-aicsimageio\\n\\n[](https://github.com/AllenCellModeling/napari-aicsimageio/actions)\\n[](https://codecov.io/gh/AllenCellModeling/napari-aicsimageio)\\n\\nAICSImageIO bindings for napari\\n\\n---\\n\\n## Features\\n* Supports reading metadata and imaging data for:\\n * `CZI`\\n * `OME-TIFF`\\n * `TIFF`\\n * Any formats supported by [aicsimageio](https://github.com/AllenCellModeling/aicsimageio)\\n * Any additional format supported by [imageio](https://github.com/imageio/imageio)\\n* Two variants of the AICSImageIO bindings:\\n * `aicsimageio`, which reads the image fully into memory\\n * `aicsimageio-delayed`, which delays reading YX planes until requested for large file support\\n\\n## Installation\\n**Stable Release:** `pip install napari-aicsimageio`<br>\\n**Development Head:** `pip install git+https://github.com/AllenCellModeling/napari-aicsimageio.git`\\n\\n## Development\\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for information related to developing the code.\\n\\n***Free software: BSD-3-Clause***\\n\\n\\n\",\n", | |
| " \"description_content_type\": \"text/markdown\",\n", | |
| " \"first_released\": \"2020-03-26T20:10:54.889461Z\",\n", | |
| " \"homepage\": \"https://github.com/AllenCellModeling/napari-aicsimageio\",\n", | |
| " \"license\": \"BSD-3-Clause\",\n", | |
| " \"name\": \"napari-aicsimageio\",\n", | |
| " \"release_date\": \"2020-12-14T07:30:26.366917Z\",\n", | |
| " \"requirements\": [\n", | |
| " \"aicsimageio\",\n", | |
| " \"napari-plugin-engine\",\n", | |
| " \"aicsimageio\",\n", | |
| " \"napari-plugin-engine\",\n", | |
| " \"pytest-runner\",\n", | |
| " \"black\",\n", | |
| " \"codecov\",\n", | |
| " \"flake8\",\n", | |
| " \"flake8-debugger\",\n", | |
| " \"napari[pyqt5]\",\n", | |
| " \"pytest\",\n", | |
| " \"pytest-cov\",\n", | |
| " \"pytest-raises\",\n", | |
| " \"bumpversion\",\n", | |
| " \"coverage\",\n", | |
| " \"ipython\",\n", | |
| " \"m2r\",\n", | |
| " \"Sphinx\",\n", | |
| " \"sphinx-rtd-theme\",\n", | |
| " \"tox\",\n", | |
| " \"twine\",\n", | |
| " \"wheel\",\n", | |
| " \"pytest-runner\",\n", | |
| " \"black\",\n", | |
| " \"codecov\",\n", | |
| " \"flake8\",\n", | |
| " \"flake8-debugger\",\n", | |
| " \"napari[pyqt5]\",\n", | |
| " \"pytest\",\n", | |
| " \"pytest-cov\",\n", | |
| " \"pytest-raises\",\n", | |
| " \"bumpversion\",\n", | |
| " \"coverage\",\n", | |
| " \"ipython\",\n", | |
| " \"m2r\",\n", | |
| " \"Sphinx\",\n", | |
| " \"sphinx-rtd-theme\",\n", | |
| " \"tox\",\n", | |
| " \"twine\",\n", | |
| " \"wheel\",\n", | |
| " \"pytest-runner\",\n", | |
| " \"black\",\n", | |
| " \"codecov\",\n", | |
| " \"flake8\",\n", | |
| " \"flake8-debugger\",\n", | |
| " \"napari[pyqt5]\",\n", | |
| " \"pytest\",\n", | |
| " \"pytest-cov\",\n", | |
| " \"pytest-raises\"\n", | |
| " ],\n", | |
| " \"requires_python\": \">=3.7\",\n", | |
| " \"summary\": \"AICSImageIO bindings for napari\",\n", | |
| " \"topics\": [\n", | |
| " \"Scientific/Engineering\",\n", | |
| " \"Scientific/Engineering :: Bio-Informatics\",\n", | |
| " \"Scientific/Engineering :: Information Analysis\",\n", | |
| " \"Scientific/Engineering :: Visualization\"\n", | |
| " ],\n", | |
| " \"version\": \"0.2.0\"\n", | |
| "}\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "def etl(package):\n", | |
| " data = get_package_data(package)\n", | |
| " extracted = {}\n", | |
| " for key, func in queries.items():\n", | |
| " extracted[key] = func(data)\n", | |
| " return extracted\n", | |
| "\n", | |
| "extracted = etl(package)\n", | |
| "pprint(extracted)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 141, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "import pandas as pd" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 142, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/html": [ | |
| "<div>\n", | |
| "<style scoped>\n", | |
| " .dataframe tbody tr th:only-of-type {\n", | |
| " vertical-align: middle;\n", | |
| " }\n", | |
| "\n", | |
| " .dataframe tbody tr th {\n", | |
| " vertical-align: top;\n", | |
| " }\n", | |
| "\n", | |
| " .dataframe thead th {\n", | |
| " text-align: right;\n", | |
| " }\n", | |
| "</style>\n", | |
| "<table border=\"1\" class=\"dataframe\">\n", | |
| " <thead>\n", | |
| " <tr style=\"text-align: right;\">\n", | |
| " <th></th>\n", | |
| " <th>name</th>\n", | |
| " <th>summary</th>\n", | |
| " <th>description</th>\n", | |
| " <th>description_content_type</th>\n", | |
| " <th>author</th>\n", | |
| " <th>author_email</th>\n", | |
| " <th>license</th>\n", | |
| " <th>requires_python</th>\n", | |
| " <th>topics</th>\n", | |
| " <th>requirements</th>\n", | |
| " <th>homepage</th>\n", | |
| " <th>release_date</th>\n", | |
| " <th>version</th>\n", | |
| " <th>first_released</th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>0</th>\n", | |
| " <td>napari-aicsimageio</td>\n", | |
| " <td>AICSImageIO bindings for napari</td>\n", | |
| " <td># napari-aicsimageio\\n\\n[ for package in packages])\n", | |
| "df.head()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 147, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "df.to_csv('napari_plugins.csv')" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": null, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [] | |
| } | |
| ], | |
| "metadata": { | |
| "kernelspec": { | |
| "display_name": "Python 3", | |
| "language": "python", | |
| "name": "python3" | |
| }, | |
| "language_info": { | |
| "codemirror_mode": { | |
| "name": "ipython", | |
| "version": 3 | |
| }, | |
| "file_extension": ".py", | |
| "mimetype": "text/x-python", | |
| "name": "python", | |
| "nbconvert_exporter": "python", | |
| "pygments_lexer": "ipython3", | |
| "version": "3.8.5" | |
| } | |
| }, | |
| "nbformat": 4, | |
| "nbformat_minor": 4 | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment