2012-07-11 43 views
1

我想使用这个API对美联储经济数据(FRED): https://github.com/zachwill/fred使用麻烦在Python API FRED - 无法加载模块

我安装了三个模块所需的文件说。我得到这个错误:

import fred 

Traceback (most recent call last): 
    File "<pyshell#0>", line 1, in <module> 
    import fred 
    File "build\bdist.win32\egg\fred\__init__.py", line 1, in <module> 
    # Dummy file to make this a package. 
    File "build\bdist.win32\egg\fred\fred.py", line 21, in <module> 
ImportError: cannot import name xml2dict 

然后我安装了xml2dict并再次安装了fred。当我现在先导入xml2dict然后导入fred时,我得到了完全相同的错误。

我很难学习在Python中安装模块,但认为我终于想通了。我似乎无法找到我在这里做错了什么,但可以使用一些帮助。谢谢!

对于扎克:这是我目前遇到的问题:

Traceback (most recent call last): 
    File "<pyshell#3>", line 1, in <module> 
    fred.series('GNPCA') 
    File "build\bdist.win32\egg\fred\api.py", line 90, in series 
    return Fred().series(path, **kwargs) 
    File "build\bdist.win32\egg\fred\core.py", line 100, in series 
    return self.get('series', path, **kwargs) 
    File "build\bdist.win32\egg\fred\core.py", line 36, in get 
    request = requests.get(url, params=params) 
    File "C:\Python26\lib\site-packages\requests-0.13.2-py2.6.egg\requests\api.py", line 54, in get 
    return request('get', url, **kwargs) 
    File "C:\Python26\lib\site-packages\requests-0.13.2-py2.6.egg\requests\safe_mode.py", line 37,  in wrapped 
    return function(method, url, **kwargs) 
    File "C:\Python26\lib\site-packages\requests-0.13.2-py2.6.egg\requests\api.py", line 42, in  request 
return s.request(method=method, url=url, **kwargs) 
    File "C:\Python26\lib\site-packages\requests-0.13.2-py2.6.egg\requests\sessions.py", line 230, in request 
    r.send(prefetch=prefetch) 
    File "C:\Python26\lib\site-packages\requests-0.13.2-py2.6.egg\requests\models.py", line 601, in send 
    raise ConnectionError(e) 
ConnectionError: HTTPConnectionPool(host='api.stlouisfed.org', port=80): Max retries exceeded with  url: /fred/series?series_id=GNPCA&api_key= 

回答

3

我是fred包的开发者。这完全是我的错 - 我错误地配置了setup.py文件,并且我推送了一个应该处理此问题的更新。对困惑感到抱歉!

+0

谢谢!刚安装成功。它看起来像一个非常好的工具。 – 2012-07-12 12:47:40

+0

我仍然遇到这个问题。我试着按照你的例子使用。我确实导入了fred,然后是fred.key('我的密钥来自FRED')。当我尝试做fred.series('GNPCA')时,出现ConnectionError错误:HTTPConnectionPool(host ='api.stlouisfed.org',port = 80):最大重试次数超过url:/ fred/series?series_id = GNPCA&api_key = [删除我的密钥]。这个例子命令是否在你的最后? – 2012-07-16 14:26:23

2

技巧上安装模块一般:

什么是一般最简单的方法是使用pipeasy_install(或二进制安装程序,如果可用的话) - 这样你所需要做的就是easy_install fred,并且所有的东西都会自动下载(只要配置正确)。

查看setuptools http://pypi.python.org/pypi/setuptools并安装相应的操作系统版本。然后你会得到一个名为easy_install的命令,这个命令将根据你的操作系统/设置安装在一个特定的位置(尽管如此,文档也会提到)。 [您也可以easy_install pippip实际上是easy_install的继任]

然后希望,所有你需要做的是easy_install fred(它会自动找到http://pypi.python.org/pypi/fred),它会下载最新的版本和所有依赖你。启动你的口译员并import fred应该“只是工作”。

+0

谢谢。我刚刚完成了你的建议。我使用easy_install重新安装了fred,安装成功。不幸的是我得到了完全相同的错误信息。 – 2012-07-11 20:53:23

+0

@DavidM我会在这里给它一个莫,'看看我不能得到更多的信息。从它 – 2012-07-11 21:13:20

+0

谢谢,我真的很感激它。至少有一点值得搞清楚如何使用easy_install,但是为这个有价值的数据源获取API也很好。 – 2012-07-11 21:30:25