0

我安装了什么

我使用以下方法在我的 Ubuntu 上安装了 Pydap:

sudo pip install Pydap

如果我正确理解了pip search pydap命令的输出,我已经正确安装了所有 Pydap 模块。

但要 100% 确定,我还输入了:

sudo apt-get install python-dap

无模块

但是,正如我所见,没有实用程序路径:

/usr/local/lib/python2.7/dist-packages/pydap/util

所以我无法导入 util 模块(import pydap.util)来执行以下代码:

from pydap.util.urs import install_basic_client

install_basic_client()

from pydap.client import open_url
dataset = open_url('https://goldsmr4.gesdisc.eosdis.nasa.gov/opendap/MERRA2/M2T1NXSLV.5.12.4/2016/06/MERRA2_400.tavg1_2d_slv_Nx.20160601.nc4')

(从https://wiki.earthdata.nasa.gov/display/EL/How+To+Access+Data+With+PyDAP复制的代码)

看起来:

apt-file find urs.py

没有返回任何要安装的包名

笔记

https://wiki.earthdata.nasa.gov/display/EL/How+To+Access+Data+With+PyDAP 有示例“AUTH MODULE CODE”适用于没有安装 util 模块的人,但它不适用于我 - 以下行有问题:

opener.addheaders = [('User-agent', pydap.lib.USER_AGENT)]

因为 pydap.lib没有定义 USER_AGENT :

AttributeError:“模块”对象没有属性“USER_AGENT”

4

1 回答 1

2

只是提醒一下,我将回答我认为您实际提出的问题,而不是您提出的问题:)

真正的问题是:“我如何访问身份验证墙后面的 NASA 地球数据?”

不幸的是,您引用的 NASA 文档有点过时了。有两种不同的修改 Pydap 客户端以允许对 NASA/URS 服务进行身份验证的提议。一个不同的提案最终胜出,而不是这个 NASA wiki 所依据的提案。

所以你的问题的答案是:“我如何安装 Pydap.util?”,你不能,因为这是一个在最新版本(3.2)中被删除的内部模块。

但是,应该可以通过安装最新版本的 Pydap 来访问地球数据。它现在是受支持的功能,其用法在文档中进行了描述

您应该可以通过几行简单的代码来做到这一点:

from pydap.client import open_url
from pydap.cas.urs import setup_session
session = setup_session("your_username", "your_pw")
dataset = open_url('http://server.example.com/path/to/dataset', session=session)
于 2017-01-12T20:34:21.670 回答