2016-09-30 2 views
3

Я пытаюсь использовать ECMWF GRIB_API для доступа к файлам GRIB с Python. Я получаю эту ошибкуImportError при использовании пакета Python Anaconda grib_api

Traceback (most recent call last): 
    File "/home/martin/markj/JustImportGRIB.py", line 1, in <module> 
    from gribapi import * 
ImportError: No module named gribapi 

Одна строка кода :)

from gribapi import *

Я использую Python Анаконды 2.7.12, Linux Centos 64-бит, установленный в качестве пользователя, а не добавляется к Anaconda путь, если это имеет значение - система Python (2.6) находится на пути. Я установил GRIB_API из Pingu Carsti channel, который был лучшим хитом Google. Установка conda не сообщила о каких-либо ошибках.

[[email protected] ~]$ anaconda2/bin/conda install -c pingucarsti grib_api=1.10.4 
Fetching package metadata ......... 
Solving package specifications: .......... 

Package plan for installation in environment /home/martin/anaconda2: 

The following packages will be downloaded: 

    package     |   build 
    ---------------------------|----------------- 
    grib_api-1.10.4   |    3   1.7 MB pingucarsti 

The following NEW packages will be INSTALLED: 

    grib_api: 1.10.4-3 pingucarsti 

Proceed ([y]/n)? y 

Fetching packages ... 
grib_api-1.10. 100% |################################| Time: 0:00:01 1.24 MB/s 
Extracting packages ... 
[  COMPLETE  ]|###################################################| 100% 
Linking packages ... 
[  COMPLETE  ]|###################################################| 100% 

Я нашел some bug reports об этом ошибки может быть вызвана ошибкой в ​​ECMWF GRIB_API, но я не знаю достаточно о Anaconda (или, возможно, Python), не знаю, чтобы выяснить, как применить workarounds.

+0

PinguCarsti посоветовал мне использовать [Конда-кузницу] канал (https://anaconda.org/conda-forge/ecmwf_grib) вместо этого. У меня все еще есть проблемы. Я также пробовал [SciTools] (https://anaconda.org/scitools/ecmwf_grib), но снова все еще испытывал проблемы. – MarkJ

+0

Это не ответ на ваш вопрос, но это может быть полезно ... https://stackoverflow.com/a/44246941/175793 – errata

ответ

1

Я прочитал файлы GRIB на Python с помощью pygrib. Я успешно установил его в виртуальной среде conda (Miniconda2 на Ubuntu 16.04). Вот что работает для меня:

  1. Установка зависимостей системы для pygrib:

    sudo apt-get install libjpeg9

    sudo apt-get install libgrib-api-dev

  2. Установите pygrib и ecmwf_grib из Конда-кузнечного канала.

    conda install -c conda-forge pygrib ecmwf_grib

+0

Спасибо за ответ, если я получу время, я попробую сам. В настоящее время работа над другими проектами ... – MarkJ

0

Try Конда-Кузницы построить на питона-eccodes (примечание: это не eccodes который является библиотека C).

Как он построен: https://github.com/conda-forge/python-eccodes-feedstock/blob/master/recipe/meta.yaml

библиотека ecCodes ЕЦСПП является следующей версией их GRIB API, и очень похож на старый GRIB API.

pelson> conda create -n gribby -c conda-forge python-eccodes 
Fetching package metadata ............. 
Solving package specifications: . 

Package plan for installation in environment /Users/pelson/miniconda/envs/gribby: 

The following NEW packages will be INSTALLED: 

    ca-certificates: 2017.7.27.1-0   conda-forge 
    curl:   7.54.1-0    conda-forge 
    eccodes:   2.4.0-0    conda-forge 
    hdf4:   4.2.12-0    conda-forge 
    hdf5:   1.8.18-1    conda-forge 
    intel-openmp: 2018.0.0-h68bdfb3_7 defaults 
    jasper:   1.900.1-4    conda-forge 
    jpeg:   9b-1     conda-forge 
    krb5:   1.14.2-0    conda-forge 
    libgfortran:  3.0.1-h93005f0_2  defaults 
    libnetcdf:  4.4.1.1-8    conda-forge 
    libpng:   1.6.28-1    conda-forge 
    libssh2:   1.8.0-1    conda-forge 
    mkl:    2018.0.0-h5ef208c_6 defaults 
    ncurses:   5.9-10    conda-forge 
    numpy:   1.13.3-py27h62f9060_0 defaults 
    openssl:   1.0.2l-0    conda-forge 
    python:   2.7.14-0    conda-forge 
    python-eccodes: 2.4.0-py27_1   conda-forge 
    readline:  6.2-0     conda-forge 
    sqlite:   3.13.0-1    conda-forge 
    tk:    8.5.19-2    conda-forge 
    zlib:   1.2.8-3    conda-forge 
# 
# To activate this environment, use: 
# > source activate gribby 
# 
# To deactivate an active environment, use: 
# > source deactivate 
# 


pelson> source activate gribby 
python(gribby) pelson> python 
Python 2.7.14 | packaged by conda-forge | (default, Oct 5 2017, 23:08:53) 
[GCC 4.2.1 Compatible Apple LLVM 6.1.0 (clang-602.0.53)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import gribapi 
>>> gribapi.__version__ 
'2.4.0'