无法实例化 Google API 服务:权限被拒绝

Unable to instantiate Google API Service: Permission Denied

我在 Google 帐户中创建了一个项目。然后使用 API 密钥和自定义搜索引擎的 ID 授权并访问 Google 自定义搜索。 我尝试通过修改示例代码使用 Python 界面执行搜索。 每次我 运行 此行之后的代码时,我都会收到此错误:

service = build("customsearch", "v1",
        developerKey="AIxx")

IOError: [Errno 13] Permission denied

我尝试自己创建一个请求来检查问题是出在 Google 还是我。这是我的要求:

https://www.googleapis.com/customsearch/v1?q=olive+garden&cx=00026xx&key=AIxx

而且成功了!所以,现在我完全糊涂了,无法弄清楚问题是什么。

更奇怪的是,当我尝试使用 Google APIs 资源管理器执行相同的搜索时,它 returns:超出每日限制

问题是因为 Google API 想要访问没有权限的位置。

运行 超级用户的脚本。像这样:

sudo python test.py

如果你知道GoogleAPI想要访问的位置,通过chmod命令更改位置的权限。

问题是因为 httplib2 安装程序没有为 cacerts.txt 上的其他人设置读取权限 您也必须向其他人添加读取权限:D

sudo chmod o+r /Library/Python/2.7/site-packages/httplib2-0.9.2-py2.7.egg/httplib2/cacerts.txt

实际上 httplib2 必须从系统范围的证书中读取这个,我不知道他们为什么不这样做。有没有人知道为什么?有针对此特定问题的补丁,例如此补丁 https://bugs.mageia.org/show_bug.cgi?id=6568