{
"cells": [
{
"cell_type": "code",
"execution_count": 2,
"id": "55ec6f8f",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Looking in indexes: https://pypi.doubanio.com/simple/\n",
"Collecting timm==0.4.12\n",
" Downloading https://pypi.doubanio.com/packages/90/fc/606bc5cf46acac3aa9bd179b3954433c026aaf88ea98d6b19f5d14c336da/timm-0.4.12-py3-none-any.whl (376 kB)\n",
"\u001b[K |████████████████████████████████| 376 kB 3.6 MB/s eta 0:00:01\n",
"\u001b[?25hRequirement already satisfied: transformers==4.15.0 in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from -r requirement.txt (line 2)) (4.15.0)\n",
"Requirement already satisfied: fairscale==0.4.4 in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from -r requirement.txt (line 3)) (0.4.4)\n",
"Requirement already satisfied: pycocoevalcap in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from -r requirement.txt (line 4)) (1.2)\n",
"Requirement already satisfied: torchvision in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from timm==0.4.12->-r requirement.txt (line 1)) (0.12.0)\n",
"Requirement already satisfied: torch>=1.4 in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from timm==0.4.12->-r requirement.txt (line 1)) (1.11.0)\n",
"Requirement already satisfied: tokenizers<0.11,>=0.10.1 in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from transformers==4.15.0->-r requirement.txt (line 2)) (0.10.3)\n",
"Requirement already satisfied: requests in /usr/local/lib/python3.7/dist-packages (from transformers==4.15.0->-r requirement.txt (line 2)) (2.27.1)\n",
"Requirement already satisfied: tqdm>=4.27 in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from transformers==4.15.0->-r requirement.txt (line 2)) (4.46.1)\n",
"Requirement already satisfied: regex!=2019.12.17 in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from transformers==4.15.0->-r requirement.txt (line 2)) (2022.1.18)\n",
"Requirement already satisfied: huggingface-hub<1.0,>=0.1.0 in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from transformers==4.15.0->-r requirement.txt (line 2)) (0.8.1)\n",
"Requirement already satisfied: packaging>=20.0 in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from transformers==4.15.0->-r requirement.txt (line 2)) (21.3)\n",
"Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.7/dist-packages (from transformers==4.15.0->-r requirement.txt (line 2)) (1.18.5)\n",
"Requirement already satisfied: importlib-metadata in /usr/local/lib/python3.7/dist-packages (from transformers==4.15.0->-r requirement.txt (line 2)) (4.11.1)\n",
"Requirement already satisfied: pyyaml>=5.1 in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from transformers==4.15.0->-r requirement.txt (line 2)) (6.0)\n",
"Requirement already satisfied: sacremoses in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from transformers==4.15.0->-r requirement.txt (line 2)) (0.0.47)\n",
"Requirement already satisfied: filelock in /usr/local/lib/python3.7/dist-packages (from transformers==4.15.0->-r requirement.txt (line 2)) (3.6.0)\n",
"Requirement already satisfied: typing-extensions>=3.7.4.3 in /usr/local/lib/python3.7/dist-packages (from huggingface-hub<1.0,>=0.1.0->transformers==4.15.0->-r requirement.txt (line 2)) (4.1.1)\n",
"Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in /usr/local/lib/python3.7/dist-packages (from packaging>=20.0->transformers==4.15.0->-r requirement.txt (line 2)) (3.0.7)\n",
"Requirement already satisfied: pycocotools>=2.0.2 in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from pycocoevalcap->-r requirement.txt (line 4)) (2.0.4)\n",
"Requirement already satisfied: matplotlib>=2.1.0 in /usr/local/lib/python3.7/dist-packages (from pycocotools>=2.0.2->pycocoevalcap->-r requirement.txt (line 4)) (3.0.3)\n",
"Requirement already satisfied: python-dateutil>=2.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib>=2.1.0->pycocotools>=2.0.2->pycocoevalcap->-r requirement.txt (line 4)) (2.8.2)\n",
"Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib>=2.1.0->pycocotools>=2.0.2->pycocoevalcap->-r requirement.txt (line 4)) (1.3.2)\n",
"Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.7/dist-packages (from matplotlib>=2.1.0->pycocotools>=2.0.2->pycocoevalcap->-r requirement.txt (line 4)) (0.11.0)\n",
"Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.7/dist-packages (from python-dateutil>=2.1->matplotlib>=2.1.0->pycocotools>=2.0.2->pycocoevalcap->-r requirement.txt (line 4)) (1.16.0)\n",
"Requirement already satisfied: zipp>=0.5 in /usr/local/lib/python3.7/dist-packages (from importlib-metadata->transformers==4.15.0->-r requirement.txt (line 2)) (3.7.0)\n",
"Requirement already satisfied: charset-normalizer~=2.0.0 in /usr/local/lib/python3.7/dist-packages (from requests->transformers==4.15.0->-r requirement.txt (line 2)) (2.0.12)\n",
"Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.7/dist-packages (from requests->transformers==4.15.0->-r requirement.txt (line 2)) (2021.10.8)\n",
"Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.7/dist-packages (from requests->transformers==4.15.0->-r requirement.txt (line 2)) (3.3)\n",
"Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/local/lib/python3.7/dist-packages (from requests->transformers==4.15.0->-r requirement.txt (line 2)) (1.26.8)\n",
"Requirement already satisfied: click in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from sacremoses->transformers==4.15.0->-r requirement.txt (line 2)) (8.0.4)\n",
"Requirement already satisfied: joblib in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from sacremoses->transformers==4.15.0->-r requirement.txt (line 2)) (1.1.0)\n",
"Requirement already satisfied: pillow!=8.3.*,>=5.3.0 in /home/jovyan/.virtualenvs/basenv/lib/python3.7/site-packages (from torchvision->timm==0.4.12->-r requirement.txt (line 1)) (8.1.0)\n",
"Installing collected packages: timm\n",
" Attempting uninstall: timm\n",
" Found existing installation: timm 0.5.4\n",
" Not uninstalling timm at /home/jovyan/work/.localenv/lib/python3.7/site-packages, outside environment /home/jovyan/.virtualenvs/basenv\n",
" Can't uninstall 'timm'. No files were found to uninstall.\n",
"Successfully installed timm-0.4.12\n",
"\u001b[33mWARNING: You are using pip version 21.1.3; however, version 22.1.2 is available.\n",
"You should consider upgrading via the '/home/jovyan/.virtualenvs/basenv/bin/python -m pip install --upgrade pip' command.\u001b[0m\n"
]
}
],
"source": [
"!/home/jovyan/.virtualenvs/basenv/bin/pip install -r requirement.txt -i https://pypi.doubanio.com/simple/"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "9c47fb1c",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Package Version\n",
"----------------------------- ------------\n",
"absl-py 0.9.0\n",
"alembic 1.7.6\n",
"argon2-cffi 21.3.0\n",
"argon2-cffi-bindings 21.2.0\n",
"astor 0.8.1\n",
"asttokens 2.0.5\n",
"astunparse 1.6.3\n",
"async-generator 1.10\n",
"attrs 19.3.0\n",
"Augmentor 0.2.8\n",
"backcall 0.2.0\n",
"baytune 0.3.12\n",
"bleach 4.1.0\n",
"blis 0.4.1\n",
"boto3 1.16.25\n",
"botocore 1.19.25\n",
"cachetools 3.1.1\n",
"cairocffi 1.3.0\n",
"CairoSVG 2.5.2\n",
"calysto 1.0.6\n",
"catalogue 1.0.0\n",
"certifi 2021.10.8\n",
"certipy 0.1.3\n",
"cffi 1.15.0\n",
"charset-normalizer 2.0.12\n",
"click 8.0.4\n",
"cloudpickle 1.2.2\n",
"cmake 3.21.1\n",
"configparser 5.2.0\n",
"copulas 0.3.3\n",
"cryptography 36.0.1\n",
"cssselect2 0.4.1\n",
"cycler 0.11.0\n",
"cymem 2.0.6\n",
"Cython 0.29.20\n",
"debugpy 1.5.1\n",
"decorator 5.1.1\n",
"defusedxml 0.7.1\n",
"distlib 0.3.4\n",
"dlib 19.22.0\n",
"dm-tree 0.1.6\n",
"easydict 1.9\n",
"en-core-web-sm 2.3.0\n",
"entrypoints 0.4\n",
"et-xmlfile 1.1.0\n",
"fairscale 0.4.4\n",
"filelock 3.6.0\n",
"func-timeout 4.3.5\n",
"future 0.18.2\n",
"gast 0.3.3\n",
"gensim 3.8.3\n",
"google-auth 2.6.0\n",
"google-auth-oauthlib 0.4.6\n",
"google-pasta 0.2.0\n",
"graphviz 0.14\n",
"greenlet 1.1.2\n",
"grpcio 1.29.0\n",
"gym 0.15.7\n",
"h5py 2.10.0\n",
"huggingface-hub 0.8.1\n",
"idna 3.3\n",
"imageio 2.8.0\n",
"imbalanced-learn 0.6.2\n",
"imgaug 0.4.0\n",
"importlib-metadata 4.11.1\n",
"importlib-resources 5.4.0\n",
"install 1.3.5\n",
"ipdb 0.13.2\n",
"ipykernel 6.9.1\n",
"ipython 7.31.1\n",
"ipython-genutils 0.2.0\n",
"ipywidgets 7.4.0\n",
"jdcal 1.4.1\n",
"jedi 0.18.1\n",
"jieba 0.42.1\n",
"Jinja2 3.0.3\n",
"jmespath 0.10.0\n",
"joblib 1.1.0\n",
"jsonschema 4.4.0\n",
"jupyter-client 7.1.2\n",
"jupyter-core 4.9.2\n",
"jupyter-telemetry 0.1.0\n",
"jupyterhub 1.4.2\n",
"jupyterlab 1.0.0a1\n",
"jupyterlab-server 0.2.0\n",
"kanren 0.2.3\n",
"Keras 2.4.3\n",
"Keras-Preprocessing 1.1.2\n",
"kiwisolver 1.3.2\n",
"Mako 1.1.6\n",
"Markdown 3.3.6\n",
"MarkupSafe 2.1.0\n",
"matplotlib 3.0.3\n",
"matplotlib-inline 0.1.3\n",
"metakernel 0.28.2\n",
"mindspore 1.0.0\n",
"minepy 1.2.4\n",
"minio 5.0.10\n",
"mistune 0.8.4\n",
"mpmath 1.2.1\n",
"multipledispatch 0.6.0\n",
"murmurhash 1.0.6\n",
"nbconvert 5.6.1\n",
"nbformat 5.1.3\n",
"nest-asyncio 1.5.4\n",
"networkx 2.6.3\n",
"nltk 3.5\n",
"notebook 6.2.0\n",
"numpy 1.18.5\n",
"numpyencoder 0.3.0\n",
"oauthlib 3.2.0\n",
"opencv-python 4.5.1.48\n",
"openpyxl 2.6.4\n",
"opt-einsum 3.3.0\n",
"packaging 21.3\n",
"paddlepaddle 2.0.1\n",
"pamela 1.0.0\n",
"pandas 0.24.2\n",
"pandocfilters 1.5.0\n",
"parso 0.8.3\n",
"pbr 5.8.1\n",
"pexpect 4.8.0\n",
"pickleshare 0.7.5\n",
"Pillow 8.1.0\n",
"pip 21.1.3\n",
"plac 1.1.3\n",
"platformdirs 2.5.1\n",
"plotly 4.8.1\n",
"portpicker 1.3.9\n",
"preshed 3.0.6\n",
"prometheus-client 0.13.1\n",
"prompt-toolkit 3.0.28\n",
"protobuf 3.19.4\n",
"ptyprocess 0.7.0\n",
"pyasn1 0.4.8\n",
"pyasn1-modules 0.2.8\n",
"PyAudio 0.2.11\n",
"pycocoevalcap 1.2\n",
"pycocotools 2.0.4\n",
"pycparser 2.21\n",
"pydot 1.4.1\n",
"pygame 2.0.1\n",
"pyglet 1.5.0\n",
"Pygments 2.11.2\n",
"pyOpenSSL 22.0.0\n",
"pyparsing 3.0.7\n",
"pyrsistent 0.18.1\n",
"python-dateutil 2.8.2\n",
"python-json-logger 2.0.2\n",
"pytorch-pretrained-bert 0.6.2\n",
"pytorch-transformers 1.2.0\n",
"pytz 2021.3\n",
"PyWavelets 1.2.0\n",
"PyYAML 6.0\n",
"pyzmq 22.3.0\n",
"regex 2022.1.18\n",
"requests 2.27.1\n",
"requests-oauthlib 1.3.1\n",
"retrying 1.3.3\n",
"rouge 1.0.0\n",
"rsa 4.8\n",
"ruamel.yaml 0.17.21\n",
"ruamel.yaml.clib 0.2.6\n",
"s3transfer 0.3.3\n",
"sacremoses 0.0.47\n",
"scikit-image 0.15.0\n",
"scikit-learn 0.22.2.post1\n",
"scipy 1.3.3\n",
"seaborn 0.10.1\n",
"semantic-version 2.8.5\n",
"Send2Trash 1.8.0\n",
"sentencepiece 0.1.91\n",
"setuptools 57.1.0\n",
"Shapely 1.7.0\n",
"six 1.16.0\n",
"smart-open 5.2.1\n",
"spacy 2.3.2\n",
"SQLAlchemy 1.4.31\n",
"srsly 1.0.5\n",
"stevedore 3.5.0\n",
"svgwrite 1.4.1\n",
"sympy 1.6.2\n",
"tensorboard 2.8.0\n",
"tensorboard-data-server 0.6.1\n",
"tensorboard-plugin-wit 1.8.1\n",
"tensorboardX 2.0\n",
"tensorflow 2.3.1\n",
"tensorflow-addons 0.11.2\n",
"tensorflow-estimator 2.3.0\n",
"tensorflow-federated 0.17.0\n",
"tensorflow-model-optimization 0.4.1\n",
"tensorflow-privacy 0.5.2\n",
"termcolor 1.1.0\n",
"terminado 0.13.1\n",
"testpath 0.5.0\n",
"tf-slim 1.1.0\n",
"thinc 7.4.1\n",
"timm 0.4.12\n",
"tinycss2 1.1.1\n",
"tokenizers 0.10.3\n",
"toolz 0.11.2\n",
"torch 1.11.0\n",
"torchtext 0.6.0\n",
"torchvision 0.12.0\n",
"tornado 6.1\n",
"tqdm 4.46.1\n",
"traitlets 5.1.1\n",
"transformers 4.15.0\n",
"typeguard 2.13.3\n",
"typing-extensions 4.1.1\n",
"unification 0.2.2\n",
"urllib3 1.26.8\n",
"virtualenv 20.13.1\n",
"virtualenv-clone 0.5.7\n",
"virtualenvwrapper 4.7.0\n",
"wasabi 0.9.0\n",
"wcwidth 0.2.5\n",
"webencodings 0.5.1\n",
"Werkzeug 2.0.3\n",
"wheel 0.36.2\n",
"widgetsnbextension 3.4.2\n",
"word2vec 0.11.1\n",
"wrapt 1.13.3\n",
"xlrd 1.2.0\n",
"XlsxWriter 1.4.3\n",
"yellowbrick 1.1\n",
"zipp 3.7.0\n",
"\u001b[33mWARNING: You are using pip version 21.1.3; however, version 22.1.2 is available.\n",
"You should consider upgrading via the '/home/jovyan/work/.localenv/bin/python -m pip install --upgrade pip' command.\u001b[0m\n"
]
}
],
"source": [
"! pip list\n"
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "c2181ede",
"metadata": {},
"outputs": [
{
"ename": "ConnectionError",
"evalue": "HTTPSConnectionPool(host='mo.zju.edu.cn', port=443): Max retries exceeded with url: /pyapi/file/temp_api_file (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f7d07fedf50>: Failed to establish a new connection: [Errno 110] Connection timed out'))",
"output_type": "error",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mTimeoutError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/urllib3/connection.py\u001b[0m in \u001b[0;36m_new_conn\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 174\u001b[0m conn = connection.create_connection(\n\u001b[0;32m--> 175\u001b[0;31m \u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_dns_host\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mport\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtimeout\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mextra_kw\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 176\u001b[0m )\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/urllib3/util/connection.py\u001b[0m in \u001b[0;36mcreate_connection\u001b[0;34m(address, timeout, source_address, socket_options)\u001b[0m\n\u001b[1;32m 94\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0merr\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 95\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0merr\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 96\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/urllib3/util/connection.py\u001b[0m in \u001b[0;36mcreate_connection\u001b[0;34m(address, timeout, source_address, socket_options)\u001b[0m\n\u001b[1;32m 84\u001b[0m \u001b[0msock\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mbind\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msource_address\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 85\u001b[0;31m \u001b[0msock\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mconnect\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msa\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 86\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0msock\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;31mTimeoutError\u001b[0m: [Errno 110] Connection timed out",
"\nDuring handling of the above exception, another exception occurred:\n",
"\u001b[0;31mNewConnectionError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/urllib3/connectionpool.py\u001b[0m in \u001b[0;36murlopen\u001b[0;34m(self, method, url, body, headers, retries, redirect, assert_same_host, timeout, pool_timeout, release_conn, chunked, body_pos, **response_kw)\u001b[0m\n\u001b[1;32m 709\u001b[0m \u001b[0mheaders\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mheaders\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 710\u001b[0;31m \u001b[0mchunked\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mchunked\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 711\u001b[0m )\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/urllib3/connectionpool.py\u001b[0m in \u001b[0;36m_make_request\u001b[0;34m(self, conn, method, url, timeout, chunked, **httplib_request_kw)\u001b[0m\n\u001b[1;32m 385\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 386\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_validate_conn\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mconn\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 387\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mSocketTimeout\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mBaseSSLError\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0me\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/urllib3/connectionpool.py\u001b[0m in \u001b[0;36m_validate_conn\u001b[0;34m(self, conn)\u001b[0m\n\u001b[1;32m 1039\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mgetattr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mconn\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"sock\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0;31m# AppEngine might not have `.sock`\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1040\u001b[0;31m \u001b[0mconn\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mconnect\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1041\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/urllib3/connection.py\u001b[0m in \u001b[0;36mconnect\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 357\u001b[0m \u001b[0;31m# Add certificate verification\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 358\u001b[0;31m \u001b[0mconn\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_new_conn\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 359\u001b[0m \u001b[0mhostname\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mhost\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/urllib3/connection.py\u001b[0m in \u001b[0;36m_new_conn\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 186\u001b[0m raise NewConnectionError(\n\u001b[0;32m--> 187\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"Failed to establish a new connection: %s\"\u001b[0m \u001b[0;34m%\u001b[0m \u001b[0me\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 188\u001b[0m )\n",
"\u001b[0;31mNewConnectionError\u001b[0m: <urllib3.connection.HTTPSConnection object at 0x7f7d07fedf50>: Failed to establish a new connection: [Errno 110] Connection timed out",
"\nDuring handling of the above exception, another exception occurred:\n",
"\u001b[0;31mMaxRetryError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/requests/adapters.py\u001b[0m in \u001b[0;36msend\u001b[0;34m(self, request, stream, timeout, verify, cert, proxies)\u001b[0m\n\u001b[1;32m 449\u001b[0m \u001b[0mretries\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmax_retries\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 450\u001b[0;31m \u001b[0mtimeout\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mtimeout\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 451\u001b[0m )\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/urllib3/connectionpool.py\u001b[0m in \u001b[0;36murlopen\u001b[0;34m(self, method, url, body, headers, retries, redirect, assert_same_host, timeout, pool_timeout, release_conn, chunked, body_pos, **response_kw)\u001b[0m\n\u001b[1;32m 785\u001b[0m retries = retries.increment(\n\u001b[0;32m--> 786\u001b[0;31m \u001b[0mmethod\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0murl\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0merror\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0me\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0m_pool\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0m_stacktrace\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0msys\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mexc_info\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 787\u001b[0m )\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/urllib3/util/retry.py\u001b[0m in \u001b[0;36mincrement\u001b[0;34m(self, method, url, response, error, _pool, _stacktrace)\u001b[0m\n\u001b[1;32m 591\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mnew_retry\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mis_exhausted\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 592\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mMaxRetryError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0m_pool\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0murl\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0merror\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0mResponseError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcause\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 593\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;31mMaxRetryError\u001b[0m: HTTPSConnectionPool(host='mo.zju.edu.cn', port=443): Max retries exceeded with url: /pyapi/file/temp_api_file (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f7d07fedf50>: Failed to establish a new connection: [Errno 110] Connection timed out'))",
"\nDuring handling of the above exception, another exception occurred:\n",
"\u001b[0;31mConnectionError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m/tmp/ipykernel_374/4271832855.py\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0mupload_url\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m'https://mo.zju.edu.cn/pyapi/file/temp_api_file'\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0mPhoto_file\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m{\u001b[0m\u001b[0;34m'file'\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mopen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'./img/demo.jpg'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'rb'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m}\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 6\u001b[0;31m \u001b[0mPhoto_file_name\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mrequests\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpost\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mupload_url\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mfiles\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mPhoto_file\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mjson\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'temp_file_name'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 7\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/requests/api.py\u001b[0m in \u001b[0;36mpost\u001b[0;34m(url, data, json, **kwargs)\u001b[0m\n\u001b[1;32m 115\u001b[0m \"\"\"\n\u001b[1;32m 116\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 117\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mrequest\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'post'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0murl\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdata\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mdata\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mjson\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mjson\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 118\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 119\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/requests/api.py\u001b[0m in \u001b[0;36mrequest\u001b[0;34m(method, url, **kwargs)\u001b[0m\n\u001b[1;32m 59\u001b[0m \u001b[0;31m# cases, and look like a memory leak in others.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 60\u001b[0m \u001b[0;32mwith\u001b[0m \u001b[0msessions\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mSession\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0msession\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 61\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0msession\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrequest\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmethod\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mmethod\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0murl\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0murl\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 62\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 63\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/requests/sessions.py\u001b[0m in \u001b[0;36mrequest\u001b[0;34m(self, method, url, params, data, headers, cookies, files, auth, timeout, allow_redirects, proxies, hooks, stream, verify, cert, json)\u001b[0m\n\u001b[1;32m 527\u001b[0m }\n\u001b[1;32m 528\u001b[0m \u001b[0msend_kwargs\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mupdate\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msettings\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 529\u001b[0;31m \u001b[0mresp\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mprep\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0msend_kwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 530\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 531\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mresp\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/requests/sessions.py\u001b[0m in \u001b[0;36msend\u001b[0;34m(self, request, **kwargs)\u001b[0m\n\u001b[1;32m 643\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 644\u001b[0m \u001b[0;31m# Send the request\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 645\u001b[0;31m \u001b[0mr\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0madapter\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrequest\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 646\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 647\u001b[0m \u001b[0;31m# Total elapsed time of the request (approximately)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m/usr/local/lib/python3.7/dist-packages/requests/adapters.py\u001b[0m in \u001b[0;36msend\u001b[0;34m(self, request, stream, timeout, verify, cert, proxies)\u001b[0m\n\u001b[1;32m 517\u001b[0m \u001b[0;32mraise\u001b[0m \u001b[0mSSLError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0me\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrequest\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mrequest\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 518\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 519\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mConnectionError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0me\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrequest\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mrequest\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 520\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 521\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mClosedPoolError\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0me\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;31mConnectionError\u001b[0m: HTTPSConnectionPool(host='mo.zju.edu.cn', port=443): Max retries exceeded with url: /pyapi/file/temp_api_file (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f7d07fedf50>: Failed to establish a new connection: [Errno 110] Connection timed out'))"
]
}
],
"source": [
"import requests\n",
"\n",
"# 先将文件上传至文件存储(此存储为临时用,一小时后文件即会被删除)\n",
"upload_url = 'https://mo.zju.edu.cn/pyapi/file/temp_api_file'\n",
"Photo_file = {'file': open('./img/demo.jpg', 'rb')}\n",
"Photo_file_name = requests.post(upload_url, files=Photo_file).json().get('temp_file_name')"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "de60afb6",
"metadata": {},
"outputs": [],
"source": [
"base_url = \"https://mo.zju.edu.cn/pyapi/apps/run/\"\n",
"app_id = \"62b12fde34514bed5c29038b\"\n",
"input_dic = {\"Photo\": {\"val\": Photo_file_name, \"type\": \"img\"}, \"Question\": {\"val\": \"<fill_with_str>\", \"type\": \"str\"}}\n",
"output_dic = {\"Answer\": {\"type\": \"str\"}}\n",
"app_version = \"0-3-0\"\n",
"payload = {\"app\": {\"input\": input_dic, \"output\": output_dic}, \"version\": app_version}\n",
"response = requests.post(base_url + app_id, json=payload)\n",
"print(response.json())"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"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.7.5"
}
},
"nbformat": 4,
"nbformat_minor": 5
}