0

我有我的脚本准备好在谷歌中管理用户但是我无法找到任何与httplib2一起使用代理,因此我经常切换到移动以避免人工完成任务。使用httplib代理无法连接到google目录-pi

做参考的所有代码来自快速入门:https://developers.google.com/admin-sdk/directory/v1/quickstart/python

简化为:

credentials = gi.get_credentials() 
http = credentials.authorize(httplib2.Http()) 
service = gi.discovery.build('admin', 'directory_v1', http=http) 
print('Starting user OU management') 

我发现这一点,但它似乎并没有为HTTP代理

工作代理信息:

  • 主持人:WPAD
  • 端口:8080
  • HTTP和HTTPS流量相同的代理
  • 没有权威性

编辑:发现这个https://github.com/jcgregorio/httplib2/wiki/Examples-Python3

代理支持是不可用直到第三方袜子模块被移植到Python 3.

那么有没有其他的http库可以使用?

感谢

编辑2:说着给谷歌,显然3.5不支持可言,但是这并没有解决我的问题httplib2都与Python 3 *

+0

在我的python 2实现中,我刚刚使用了环境变量:set https_proxy = https:// someuser:[email protected]:8080。那样有用吗? –

+0

不幸的不是。谢谢你在这么迟后才提出这个问题 – mb0742

回答

1

我想你应该尝试使用httplib2shim而不是httplib2的

你可以看看这个教程在我的博客:https://dinatam.com/fr/python-3-google-api-proxy/

在简单的话,只需更换这种代码:

from httplib2 import Http 
http_auth = credentials.authorize(Http()) 

通过这一个:

import httplib2shim 
http_auth = credentials.authorize(httplib2shim.Http()) 
+0

令人惊叹 - 谢谢你。我只是简单地将它改成httplib2shim作为httplib2,并且所有的东西都能正常工作 – mb0742

0

我很感谢大家的帮助 - 不幸的是,谷歌(公司或他们的结果)没有任何解决方案,并且随着年底的临近,我没有时间通过​​手机运行所有任务。

如果有人对“修复”感兴趣:我只是回到了python2.7,并用它们的2.x替换了一些{** foo}类型的语句。

干杯

相关问题