Импорт субмодулей не работает в Google Colab - PullRequest
0 голосов
/ 02 февраля 2019

У меня есть пакет с именем boo, который я устанавливаю на google colab из репозитория github.Процесс установки выглядит нормально и выдает сообщение об успехе Successfully installed boo-0.1.Однако import boo не удается при первом внутреннем импорте.

Я повторил те же шаги установки в локальной виртуальной среде, и пакет работал, но не на коллобе.

Вот мои шаги и трассировка ошибок:

!rm -rf sandbox
!git clone https://github.com/ru-corporate/sandbox.git
!pip install -r sandbox/requirements.txt 
!pip install sandbox/.

В качестве альтернативы я попытался

!pip install git+https://github.com/ru-corporate/sandbox.git@master

Трассировка ошибки:

ModuleNotFoundError                       Traceback (most recent call last)

<ipython-input-7-fc0b1d036b35> in <module>()
----> 1 import boo

/usr/local/lib/python3.6/dist-packages/boo/__init__.py in <module>()
----> 1 from boo.boo import download, build, read_dataframe, files
      2 from boo.views.whatis import whatis

/usr/local/lib/python3.6/dist-packages/boo/boo.py in <module>()
      3 from tqdm import tqdm
      4 
----> 5 from boo.file.download import curl

По сути, из root __init__.py импорт идет в root boo.py и спотыкается при поиске boo/file/download.py.

Как мне заставить этот пакет работать на collab?

1 Ответ

0 голосов
/ 02 февраля 2019

Я мог бы исправить поведение подпакета, отредактировав setup.py как предложено здесь :

  # ...
  packages=setuptools.find_packages()
  # ...

Почему-то Colab более ограничивает этот параметр, чем локальная установка.

...