2015-09-26 65 views
0

我试图运行此非常基本的代码(在http://pandas.pydata.org/pandas-docs/stable/remote_data.html#remote-data-ga找到):不能得到蟒蛇熊猫谷歌分析连接工作

import pandas.io.ga as ga 
    ga.read_ga(
     account_id = "ZZZZZZZZZZ", 
     profile_id = "YYYYYYYYYY", 
     property_id = "XXXXXXXXX", 
     metrics  = ['users', 'pageviews'], 
     dimensions = ['dayOfWeek'], 
     start_date = "2014-01-01", 
     end_date = "2014-08-01") 

我得到以下结果:

Traceback (most recent call last): 
    File "Untitled.py", line 14, in <module> 
    end_date = "2015-01-01" 

File "C:\Users\gwaldman\AppData\Local\Continuum\Anaconda\lib\sitepackages\pandas\io\ga.py", line 105, in read_gareader = GAnalytics(**reader_kwds) 

File "C:\Users\gwaldman\AppData\Local\Continuum\Anaconda\lib\sitepackages\pandas\io\ga.py", line 174, in __init__self._service = self._init_service(secrets) 
File "C:\Users\gwaldman\AppData\Local\Continuum\Anaconda\lib\sitepackages\pandas\io\ga.py", line 186, in _init_servicehttp = self.authenticate(secrets) 
File "C:\Users\gwaldman\AppData\Local\Continuum\Anaconda\lib\sitepackages\pandas\io\ga.py", line 146, in authenticate return auth.authenticate(flow, self.token_store) 
File "C:\Users\gwaldman\AppData\Local\Continuum\Anaconda\lib\sitepackages\pandas\io\auth.py", line 108, in authenticate credentials = tools.run(flow, storage) 

AttributeError: 'module' object has no attribute 'run' 

我跟着使用Google API进行身份验证的说明,并且已经能够成功完成,但似乎无法使其与大熊猫一起使用。我下载了一个client_secrets文件,并将其放在与pandas.io.ga相同的文件夹中。

我也在运行Anaconda Python。已经搜索并尝试了大量的东西,但似乎甚至不能进行身份验证。

+0

你在IPython中或从终端运行此代码? – measureallthethings

+1

pandas正在使用已弃用的方法(https://github.com/pydata/pandas/blob/1d8717446d8666207b63ae324e56be60a0b01b07/pandas/io/auth.py#L108),该方法已从基础库8月25日https:// github中删除。 com/google/oauth2client/commit/05ae3426f271515bab4dc6a210428300286438e8 您应该向pandas git repo提出问题,或者您可以自己提交拉取请求以使用正确的方法。 – Matt

回答

1

正如@Matt曾建议,无论是文件,大熊猫的业主一票改变(目前)从run()pandas/io/auth.py线108 run_flow(),或使自己解决并提交PR。

对于遇到了此问题其他开发人员:如果你有Google APIs Client Library for Python的最新版本(as of Feb 2016),只是重命名你的电话从tools.run()tools.run_flow(),你应该是好到去。更多关于PSA的变化(公共服务公告)blogpost我在2015年中期回复,但定期更新至当前版本。

升级您的客户端库的最快方法是: pip install -U google-api-python-client # or pip3 for 3.x