ОБНОВЛЕНИЕ: Точное решение в комментариях под помеченным ответом.
В корпоративной среде redhat linux Python не может найти пакет cx_Oracle, необходимый для подключения к базе данных. Смотрите журналы:
[user@redhat ~]$ echo $PYTHONPATH
~/.local/lib/python3.4/site-packages
[user@redhat ~]$ cd $PYTHONPATH
[user@redhat site-packages]$ ls -l
total 1912
drwxrwxr-x 2 user user 131 Apr 20 12:00 cx_Oracle-6.2.1.dist-info
-rwxrwxr-x 1 user user 1900997 Apr 20 12:00 cx_Oracle.cpython-34m.so
-rw-rw-r-- 1 user user 290 Apr 20 12:00 easy-install.pth
drwxrwxr-x 4 user user 114 Apr 20 12:00 et_xmlfile
drwxrwxr-x 2 user user 117 Apr 20 12:00 et_xmlfile-1.0.1-py3.4.egg-info
drwxrwxr-x 2 user user 150 Apr 20 12:00 jdcal-1.4.dist-info
-rw-rw-r-- 1 user user 12553 Apr 20 12:00 jdcal.py
-rw-rw-r-- 1 user user 13386 Apr 20 12:00 jdcal.pyc
drwxrwxr-x 21 user user 4096 Apr 20 12:00 openpyxl
drwxrwxr-x 2 user user 154 Apr 20 12:00 openpyxl-2.5.3-py3.4.egg-info
drwxrwxr-x 2 user user 61 Apr 23 12:00 __pycache__
-rw-rw-r-- 1 user user 2389 Apr 23 12:00 site.py
-rw-rw-r-- 1 user user 1743 Apr 23 12:00 site.pyc
[user@redhat site-packages]$ python
Python 2.7.5 (default, May 3 2017, 07:55:04)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-14)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cx_Oracle
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named cx_Oracle
>>> import openpyxl
openpyxl/xml/__init__.py:15: UserWarning: The installed version of lxml is too old to be used with openpyxl
warnings.warn("The installed version of lxml is too old to be used with openpyxl")
>>> exit()
[user@redhat site-packages]$
Обратите внимание, что и cx_Oracle, и openpyxl были установлены с использованием pip в одной команде: pip install --user cx_Oracle openpyxl
Они находятся в одном и том же месте и одинаково загружаются в python, но openpyxl виден, а cx_Oracle - нет. Что я тут не так делаю?