{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# **App Project**\n",
    "\n",
    "## 1.项目类型介绍\n",
    "\n",
    "  - 应用(App)是由模块组成、有特定功能的软件程序。它能够满足普通用户的直接使用需求，例如航班延误预测应用、夫妻脸应用等。你可以将开发好的App部署到应用市场，其他对你的App感兴趣的人就可以通过api调用的方式使用您的App,也可以通过我们的客户端在手机上进行使用App。\n",
    "  \n",
    "  - 在你开发App的过程中可以引入模块(Module)和数据集(Dataset)来更好的创建你的App。\n",
    "  \n",
    "  - App目录结构:\n",
    "  \n",
    "    - ```results```\n",
    "    *-----结果的文件存放地(如果你运行了job，job运行完的结果文件也会存放于此)*\n",
    "    - ```app_spec.yml```*-----定义你的输入输出，为部署服务*\n",
    "    - ```OVERVIEW.md``` *-----有关这个app的相关介绍*\n",
    "    - `READE.ME` *-----说明文档*"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2.简单环境介绍\n",
    "\n",
    "Notebook(就是你现在所处的页面)，它是一个在线的类IDE编程环境，内嵌了JupyterLab环境，并且加入数据集和模块的调用功能。我们还在Classroom为初学者提供了机器学习的入门教程。此外我们简化了部署过程，为你提供更便捷的开发流程。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.常用功能介绍\n",
    "\n",
    "- 如何运行代码？\n",
    "\n",
    "在代码单元（cell）里，您可以输入任何代码并执行。\"Shift+Enter/Return\"，代码将被运行，并显示结果。同时切换到新的cell中。\n",
    "\n",
    "- 如何解压上传后的文件？\n",
    "\n",
    "在cell中输入并运行以下命令：\n",
    "```!unzip -o file_name.zip```\n",
    "\n",
    "- 如何查看所有包（package）？\n",
    "\n",
    "`!pip list --format=columns`\n",
    "\n",
    "- 如何检查是否已有某个包？\n",
    "\n",
    "`!pip show package_name`\n",
    "\n",
    "- 如何安装缺失的包？\n",
    "\n",
    "`!pip install package_name`\n",
    "\n",
    "- 如何更新已有的包？\n",
    "\n",
    "`!pip install package_name --upgrade`\n",
    "\n",
    "\n",
    "- 如何使用包？\n",
    "\n",
    "`import package_name`\n",
    "\n",
    "- 如何显示当前目录下的档案及目录？\n",
    "\n",
    "`ls`\n",
    "\n",
    "- 引入的数据集如何使用？\n",
    "\n",
    "数据集项目引入后存放在datasets文件夹下，注意，这个文件夹是只读的，不可修改。如果需要修改，可在notebook中使用\n",
    "\n",
    "`!cp -R ./datasets/<imported_dataset_dir>  ./<your_folder>`\n",
    "\n",
    "指令将其复制到其他文件夹后再编辑，对于引入的数据集中的zip文件，可使用\n",
    "\n",
    "`!unzip ./datasets/<imported_dataset_dir>/<XXX.zip> -d ./<your_folder>`\n",
    "\n",
    "指令解压缩到其他文件夹后使用\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4.其他可参考资源\n",
    "\n",
    "- docs: 这是一个[帮助文档](http://docs.momodel.cn/)，基本操作和常见问题都可以在里面找到。\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Archive:  /home/jovyan/work/chineseocr.zip\n",
      "  End-of-central-directory signature not found.  Either this file is not\n",
      "  a zipfile, or it constitutes one disk of a multi-part archive.  In the\n",
      "  latter case the central directory and zipfile comment will be found on\n",
      "  the last disk(s) of this archive.\n",
      "unzip:  cannot find zipfile directory in one of /home/jovyan/work/chineseocr.zip or\n",
      "        /home/jovyan/work/chineseocr.zip.zip, and cannot find /home/jovyan/work/chineseocr.zip.ZIP, period.\n"
     ]
    }
   ],
   "source": [
    "!unzip  /home/jovyan/work/chineseocr.zip -d /home/jovyan/work"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Archive:  chineseocr.zip\n",
      "  End-of-central-directory signature not found.  Either this file is not\n",
      "  a zipfile, or it constitutes one disk of a multi-part archive.  In the\n",
      "  latter case the central directory and zipfile comment will be found on\n",
      "  the last disk(s) of this archive.\n",
      "unzip:  cannot find zipfile directory in one of chineseocr or\n",
      "        chineseocr.zip, and cannot find chineseocr.ZIP, period.\n"
     ]
    }
   ],
   "source": [
    "!unzip -o chineseocr"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['',\n",
       " '/home/jovyan/.virtualenvs/basenv/lib/python3.5/site-packages',\n",
       " '/home/jovyan/work/.localenv/lib/python35.zip',\n",
       " '/home/jovyan/work/.localenv/lib/python3.5',\n",
       " '/home/jovyan/work/.localenv/lib/python3.5/plat-x86_64-linux-gnu',\n",
       " '/home/jovyan/work/.localenv/lib/python3.5/lib-dynload',\n",
       " '/usr/lib/python3.5',\n",
       " '/usr/lib/python3.5/plat-x86_64-linux-gnu',\n",
       " '/home/jovyan/work/.localenv/lib/python3.5/site-packages',\n",
       " '/usr/local/lib/python3.5/dist-packages',\n",
       " '/usr/lib/python3/dist-packages',\n",
       " '/home/jovyan/.virtualenvs/basenv/lib/python3.5/site-packages/IPython/extensions',\n",
       " '/home/jovyan/.ipython']"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import sys\n",
    "sys.path"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<module 'posixpath' from '/home/jovyan/work/.localenv/lib/python3.5/posixpath.py'>"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import os\n",
    "os.path"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'/home/jovyan/work'"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "os.getcwd()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3.常用功能介绍\n",
    "\n",
    "- 如何运行代码？\n",
    "\n",
    "在代码单元（cell）里，您可以输入任何代码并执行。\"Shift+Enter/Return\"，代码将被运行，并显示结果。同时切换到新的cell中。\n",
    "\n",
    "- 如何解压上传后的文件？\n",
    "\n",
    "在cell中输入并运行以下命令：\n",
    "```!unzip -o file_name.zip```\n",
    "\n",
    "- 如何查看所有包（package）？\n",
    "\n",
    "`!pip list --format=columns`\n",
    "\n",
    "- 如何检查是否已有某个包？\n",
    "\n",
    "`!pip show package_name`\n",
    "\n",
    "- 如何安装缺失的包？\n",
    "\n",
    "`!pip install package_name`\n",
    "\n",
    "- 如何更新已有的包？\n",
    "\n",
    "`!pip install package_name --upgrade`\n",
    "\n",
    "\n",
    "- 如何使用包？\n",
    "\n",
    "`import package_name`\n",
    "\n",
    "- 如何显示当前目录下的档案及目录？\n",
    "\n",
    "`ls`\n",
    "\n",
    "- 引入的数据集如何使用？\n",
    "\n",
    "数据集项目引入后存放在datasets文件夹下，注意，这个文件夹是只读的，不可修改。如果需要修改，可在notebook中使用\n",
    "\n",
    "`!cp -R ./datasets/<imported_dataset_dir>  ./<your_folder>`\n",
    "\n",
    "指令将其复制到其他文件夹后再编辑，对于引入的数据集中的zip文件，可使用\n",
    "\n",
    "`!unzip ./datasets/<imported_dataset_dir>/<XXX.zip> -d ./<your_folder>`\n",
    "\n",
    "指令解压缩到其他文件夹后使用\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Archive:  ./chineseocr-master.zip\n",
      "30e4bea7fb1f1d9a806472baa6677e69afc6ad4e\n",
      "   creating: ./chineseocr-master/\n",
      "  inflating: ./chineseocr-master/.gitignore  \n",
      "  inflating: ./chineseocr-master/.gitmodules  \n",
      "  inflating: ./chineseocr-master/Dockerfile  \n",
      "  inflating: ./chineseocr-master/LICENSE  \n",
      "  inflating: ./chineseocr-master/README.md  \n",
      "  inflating: ./chineseocr-master/app.py  \n",
      "   creating: ./chineseocr-master/apphelper/\n",
      "  inflating: ./chineseocr-master/apphelper/__init__.py  \n",
      "  inflating: ./chineseocr-master/apphelper/image.py  \n",
      "   creating: ./chineseocr-master/application/\n",
      " extracting: ./chineseocr-master/application/README.md  \n",
      " extracting: ./chineseocr-master/application/__init__.py  \n",
      "  inflating: ./chineseocr-master/application/idcard.py  \n",
      "  inflating: ./chineseocr-master/application/trainTicket.py  \n",
      "  inflating: ./chineseocr-master/config.py  \n",
      "   creating: ./chineseocr-master/crnn/\n",
      " extracting: ./chineseocr-master/crnn/__init__.py  \n",
      "  inflating: ./chineseocr-master/crnn/crnn_keras.py  \n",
      "  inflating: ./chineseocr-master/crnn/crnn_torch.py  \n",
      "  inflating: ./chineseocr-master/crnn/dataset.py  \n",
      "  inflating: ./chineseocr-master/crnn/keys.py  \n",
      "  inflating: ./chineseocr-master/crnn/network_keras.py  \n",
      "  inflating: ./chineseocr-master/crnn/network_torch.py  \n",
      "  inflating: ./chineseocr-master/crnn/util.py  \n",
      "  inflating: ./chineseocr-master/crnn/utils.py  \n",
      "   creating: ./chineseocr-master/darknet/\n",
      "  inflating: ./chineseocr-master/docker.sh  \n",
      "  inflating: ./chineseocr-master/model.py  \n",
      "   creating: ./chineseocr-master/models/\n",
      " extracting: ./chineseocr-master/models/README.md  \n",
      "  inflating: ./chineseocr-master/models/text.cfg  \n",
      "  inflating: ./chineseocr-master/models/text.data  \n",
      " extracting: ./chineseocr-master/models/text.names  \n",
      "  inflating: ./chineseocr-master/post-demo.py  \n",
      "  inflating: ./chineseocr-master/requirements.txt  \n",
      "  inflating: ./chineseocr-master/setup-cpu.md  \n",
      "  inflating: ./chineseocr-master/setup.md  \n",
      "   creating: ./chineseocr-master/static/\n",
      "   creating: ./chineseocr-master/static/css/\n",
      "  inflating: ./chineseocr-master/static/css/checkbox.css  \n",
      "   creating: ./chineseocr-master/static/img/\n",
      "  inflating: ./chineseocr-master/static/img/loading.gif  \n",
      "   creating: ./chineseocr-master/static/js/\n",
      "  inflating: ./chineseocr-master/static/js/helps.js  \n",
      "  inflating: ./chineseocr-master/static/js/jquery.form.js  \n",
      "  inflating: ./chineseocr-master/static/js/jquery.js  \n",
      "   creating: ./chineseocr-master/templates/\n",
      "  inflating: ./chineseocr-master/templates/base.html  \n",
      "  inflating: ./chineseocr-master/templates/ocr.html  \n",
      "  inflating: ./chineseocr-master/test.ipynb  \n",
      "   creating: ./chineseocr-master/test/\n",
      "  inflating: ./chineseocr-master/test/demo.png  \n",
      "  inflating: ./chineseocr-master/test/idcard-demo.jpeg  \n",
      "  inflating: ./chineseocr-master/test/idcard-demo.png  \n",
      "  inflating: ./chineseocr-master/test/img-demo.png  \n",
      "  inflating: ./chineseocr-master/test/img.jpeg  \n",
      "  inflating: ./chineseocr-master/test/line-demo.png  \n",
      "  inflating: ./chineseocr-master/test/line.jpg  \n",
      "  inflating: ./chineseocr-master/test/train-demo.jpg  \n",
      "  inflating: ./chineseocr-master/test/train-demo.png  \n",
      "   creating: ./chineseocr-master/text/\n",
      " extracting: ./chineseocr-master/text/__init__.py  \n",
      "  inflating: ./chineseocr-master/text/darknet_detect.py  \n",
      "   creating: ./chineseocr-master/text/detector/\n",
      " extracting: ./chineseocr-master/text/detector/__init__.py  \n",
      "  inflating: ./chineseocr-master/text/detector/detectors.py  \n",
      "  inflating: ./chineseocr-master/text/detector/text_proposal_connector.py  \n",
      "  inflating: ./chineseocr-master/text/detector/text_proposal_graph_builder.py  \n",
      "   creating: ./chineseocr-master/text/detector/utils/\n",
      " extracting: ./chineseocr-master/text/detector/utils/__init__.py  \n",
      "  inflating: ./chineseocr-master/text/detector/utils/cython_nms.c  \n",
      "  inflating: ./chineseocr-master/text/detector/utils/cython_nms.pyx  \n",
      "  inflating: ./chineseocr-master/text/detector/utils/gpu_nms.c  \n",
      "  inflating: ./chineseocr-master/text/detector/utils/gpu_nms.cpp  \n",
      "  inflating: ./chineseocr-master/text/detector/utils/gpu_nms.hpp  \n",
      "  inflating: ./chineseocr-master/text/detector/utils/gpu_nms.pyx  \n",
      "  inflating: ./chineseocr-master/text/detector/utils/make-for-cpu.cmd  \n",
      "  inflating: ./chineseocr-master/text/detector/utils/make-for-cpu.sh  \n",
      "  inflating: ./chineseocr-master/text/detector/utils/make.sh  \n",
      "  inflating: ./chineseocr-master/text/detector/utils/nms_kernel.cu  \n",
      "  inflating: ./chineseocr-master/text/detector/utils/python_nms.py  \n",
      "  inflating: ./chineseocr-master/text/detector/utils/setup.py  \n",
      "  inflating: ./chineseocr-master/text/detector/utils/setup_cpu.py  \n",
      "  inflating: ./chineseocr-master/text/detector/utils/setup_cpu_win.py  \n",
      "  inflating: ./chineseocr-master/text/keras_detect.py  \n",
      "  inflating: ./chineseocr-master/text/keras_yolo3.py  \n",
      "  inflating: ./chineseocr-master/text/opencv_dnn_detect.py  \n",
      "   creating: ./chineseocr-master/tools/\n",
      "  inflating: ./chineseocr-master/tools/pytorch_to_keras.py  \n",
      "   creating: ./chineseocr-master/train/\n",
      " extracting: ./chineseocr-master/train/__init__.py  \n",
      "   creating: ./chineseocr-master/train/darknet/\n",
      "  inflating: ./chineseocr-master/train/darknet/data-ready.py  \n",
      "  inflating: ./chineseocr-master/train/darknet/train.md  \n",
      "  inflating: ./chineseocr-master/train/darknet/train.sh  \n",
      "   creating: ./chineseocr-master/train/data/\n",
      "   creating: ./chineseocr-master/train/data/ocr/\n",
      "   creating: ./chineseocr-master/train/data/ocr/0/\n",
      "  inflating: ./chineseocr-master/train/data/ocr/0/0.jpg  \n",
      " extracting: ./chineseocr-master/train/data/ocr/0/0.txt  \n",
      "  inflating: ./chineseocr-master/train/data/ocr/0/1.jpg  \n",
      " extracting: ./chineseocr-master/train/data/ocr/0/1.txt  \n",
      "  inflating: ./chineseocr-master/train/data/ocr/0/2.jpg  \n",
      " extracting: ./chineseocr-master/train/data/ocr/0/2.txt  \n",
      "  inflating: ./chineseocr-master/train/data/ocr/0/3.jpg  \n",
      " extracting: ./chineseocr-master/train/data/ocr/0/3.txt  \n",
      "  inflating: ./chineseocr-master/train/data/ocr/0/4.jpg  \n",
      " extracting: ./chineseocr-master/train/data/ocr/0/4.txt  \n",
      "  inflating: ./chineseocr-master/train/data/ocr/0/5.jpg  \n",
      " extracting: ./chineseocr-master/train/data/ocr/0/5.txt  \n",
      "  inflating: ./chineseocr-master/train/data/ocr/0/6.jpg  \n",
      " extracting: ./chineseocr-master/train/data/ocr/0/6.txt  \n",
      "  inflating: ./chineseocr-master/train/data/ocr/0/7.jpg  \n",
      " extracting: ./chineseocr-master/train/data/ocr/0/7.txt  \n",
      "   creating: ./chineseocr-master/train/data/text/\n",
      "   creating: ./chineseocr-master/train/data/text/0/\n",
      "  inflating: ./chineseocr-master/train/data/text/0/0.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/0.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/1.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/1.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/10.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/10.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/100.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/100.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/11.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/11.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/12.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/12.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/13.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/13.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/14.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/14.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/15.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/15.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/16.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/16.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/18.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/18.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/19.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/19.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/2.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/2.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/20.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/20.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/21.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/21.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/22.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/22.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/23.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/23.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/24.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/24.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/25.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/25.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/26.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/26.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/27.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/27.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/28.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/28.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/29.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/29.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/3.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/3.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/30.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/30.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/31.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/31.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/32.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/32.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/33.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/33.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/34.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/34.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/35.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/35.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/36.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/36.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/37.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/37.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/38.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/38.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/39.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/39.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/4.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/4.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/40.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/40.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/41.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/41.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/42.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/42.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/43.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/43.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/44.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/44.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/45.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/45.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/46.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/46.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/47.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/47.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/48.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/48.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/49.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/49.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/5.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/5.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/50.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/50.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/51.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/51.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/52.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/52.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/53.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/53.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/54.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/54.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/55.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/55.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/56.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/56.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/57.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/57.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/58.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/58.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/59.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/59.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/6.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/6.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/60.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/60.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/61.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/61.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/62.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/62.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/63.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/63.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/64.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/64.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/65.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/65.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/66.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/66.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/67.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/67.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/68.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/68.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/69.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/69.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/7.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/7.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/70.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/70.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/71.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/71.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/72.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/72.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/73.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/73.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/74.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/74.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/75.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/75.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/76.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/76.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/77.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/77.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/78.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/78.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/79.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/79.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/8.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/8.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/80.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/80.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/81.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/81.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/82.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/82.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/83.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/83.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/84.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/84.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/85.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/85.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/86.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/86.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/87.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/87.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/88.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/88.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/89.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/89.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/9.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/9.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/90.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/90.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/91.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/91.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/92.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/92.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/93.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/93.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/94.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/94.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/95.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/95.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/96.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/96.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/97.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/97.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/98.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/98.xml  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/99.jpg  \n",
      "  inflating: ./chineseocr-master/train/data/text/0/99.xml  \n",
      "   creating: ./chineseocr-master/train/ocr/\n",
      " extracting: ./chineseocr-master/train/ocr/__init__.py  \n",
      "  inflating: ./chineseocr-master/train/ocr/dataset.py  \n",
      "  inflating: ./chineseocr-master/train/ocr/generic_utils.py  \n",
      "  inflating: ./chineseocr-master/train/ocr/train-ocr.ipynb  \n",
      "   creating: ./chineseocr-master/train/text/\n",
      " extracting: ./chineseocr-master/train/text/__init__.py  \n",
      "  inflating: ./chineseocr-master/train/text/gen_anchors.py  \n",
      "  inflating: ./chineseocr-master/train/text/text-train-icdr2019.ipynb  \n",
      "  inflating: ./chineseocr-master/train/text/text-train.ipynb  \n",
      "  inflating: ./chineseocr-master/train/text/utils.py  \n"
     ]
    }
   ],
   "source": [
    "!unzip ./chineseocr-master.zip -d ./"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Looking in indexes: https://mirrors.ustc.edu.cn/pypi/web/simple\n",
      "Collecting bs4\n",
      "\u001b[33m  Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError(\"HTTPSConnectionPool(host='mirrors.ustc.edu.cn', port=443): Read timed out. (read timeout=15)\",)': /pypi/web/simple/bs4/\u001b[0m\n",
      "\u001b[33m  Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError(\"HTTPSConnectionPool(host='mirrors.ustc.edu.cn', port=443): Read timed out. (read timeout=15)\",)': /pypi/web/simple/bs4/\u001b[0m\n",
      "\u001b[33m  Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError(\"HTTPSConnectionPool(host='mirrors.ustc.edu.cn', port=443): Read timed out. (read timeout=15)\",)': /pypi/web/simple/bs4/\u001b[0m\n",
      "  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/10/ed/7e8b97591f6f456174139ec089c769f89a94a1a4025fe967691de971f314/bs4-0.0.1.tar.gz\n",
      "Collecting beautifulsoup4 (from bs4)\n",
      "\u001b[?25l  Downloading https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/1d/5d/3260694a59df0ec52f8b4883f5d23b130bc237602a1411fa670eae12351e/beautifulsoup4-4.7.1-py3-none-any.whl (94kB)\n",
      "\u001b[K    100% |████████████████████████████████| 102kB 760kB/s a 0:00:011\n",
      "\u001b[?25hCollecting soupsieve>=1.2 (from beautifulsoup4->bs4)\n",
      "\u001b[33m  Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError(\"HTTPSConnectionPool(host='mirrors.ustc.edu.cn', port=443): Read timed out. (read timeout=15)\",)': /pypi/web/simple/soupsieve/\u001b[0m\n",
      "  Using cached https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/b9/a5/7ea40d0f8676bde6e464a6435a48bc5db09b1a8f4f06d41dd997b8f3c616/soupsieve-1.9.1-py2.py3-none-any.whl\n",
      "Requirement already satisfied (use --upgrade to upgrade): soupsieve>=1.2 from https://mirrors.tuna.tsinghua.edu.cn/pypi/web/packages/b9/a5/7ea40d0f8676bde6e464a6435a48bc5db09b1a8f4f06d41dd997b8f3c616/soupsieve-1.9.1-py2.py3-none-any.whl#sha256=6898e82ecb03772a0d82bd0d0a10c0d6dcc342f77e0701d0ec4a8271be465ece in ./.localenv/lib/python3.5/site-packages (from beautifulsoup4->bs4)\n",
      "Building wheels for collected packages: bs4\n",
      "  Building wheel for bs4 (setup.py) ... \u001b[?25ldone\n",
      "\u001b[?25h  Stored in directory: /home/jovyan/.cache/pip/wheels/9d/45/60/69ea65e3482851195c8b66ac6b5a20bb871b34706b2adff360\n",
      "Successfully built bs4\n",
      "Installing collected packages: beautifulsoup4, bs4\n",
      "Successfully installed beautifulsoup4-4.7.1 bs4-0.0.1\n",
      "\u001b[33mYou are using pip version 19.0.3, however version 19.1.1 is available.\n",
      "You should consider upgrading via the 'pip install --upgrade pip' command.\u001b[0m\n"
     ]
    }
   ],
   "source": [
    "!pip install bs4"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "!pip "
   ]
  }
 ],
 "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.5.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
