Не удалось импортировать google.cloud.vision через пакет reticulate в R.

Я использую пакет reticulate для импорта модулей Python в RStudio. Мне удалось импортировать такие пакеты, как cv2, pandas, sklearn, но не удалось импортировать пакет google.cloud.vision. Я установил этот пакет через pip и использую Anaconda 4.4. .0 Версия Python 2.7 на сервере ubuntu-trusty-14.04-amd64 на AWS.Изображение ошибки в R-Studio Server Установка Vision и языковых библиотек производилась через

pip install --upgrade google-cloud-vision
pip install --upgrade google-cloud-language

Я также могу импортировать эти модули в интерактивные сеансы Python без каких-либо ошибок.

>>>import google.cloud.vision
>>>import google.cloud.language

Может кто подскажет, что я делаю не так...

Редактировать 1: я попытался использовать подход, предложенный Юань Таном. Я установил запросы и пакет httplib2 в среде conda. Я также использовал команду use_python для укажите Rstudio на правильную среду Python.

use_python("/home/avadhut/miniconda2/bin/python")

Пакет cv2 установлен в среде conda и успешно импортирован, что означает, что RStudio использует правильную среду Python.

Даже после всего этого я получаю следующую трассировку в консоли R studio.

Error in py_module_import(module, convert = convert) : 
  ImportError: The requests library is not installed, please install the requests package to use the requests transport.

Detailed traceback: 
File "/home/avadhut/miniconda2/lib/python2.7/site-packages/google/cloud/vision/__init__.py", line 36, in <module>
    from google.cloud.vision.client import Client
File "/home/avadhut/miniconda2/lib/python2.7/site-packages/google/cloud/vision/client.py", line 20, in <module>
    from google.cloud.client import ClientWithProject
File "/home/avadhut/miniconda2/lib/python2.7/site-packages/google/cloud/client.py", line 25, in <module>
    import google.auth.transport.requests
File "/home/avadhut/miniconda2/lib/python2.7/site-packages/google/auth/transport/requests.py", line 30, in <module>
    caught_exc,
File "/home/avadhut/miniconda2/lib/python2.7/site-packages/six.py", line 737, in raise_from
    raise value

Вот изображение моей RStudio IDE с отображаемой ошибкой. !Ошибка импорта пакета Reticulate


person Community    schedule 07.09.2017    source источник


Ответы (1)


Это связано с тем, что в бинарном файле Python, который вы используете внутри RStudio через reticulate, не установлены эти пакеты (например, requests, httplib2 и т. д.).

Вы можете узнать, что использует Python reticulate через py_config(). Вы также можете найти двоичный файл Python, который вы используете, на терминале через which python.

Предположим, что двоичный файл Python, который вы используете на терминале (успешный импорт): "/Users/user1/anaconda3/bin/python". Затем вы используете этот конкретный двоичный файл Python для reticulate с помощью следующего:

use_python("/Users/user1/anaconda3/bin/python")

Тогда ваш импорт должен работать как положено.

person Yuan Tang    schedule 17.03.2018