我的脚本已准备就绪,可以管理google中的用户但是我无法找到使用httplib2的代理,因此我不断切换到移动设备以避免手动完成任务。
对于引用,所有代码都来自快速入门: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代理
http = credentials.authorize(httplib2.Http(httplib2.ProxyInfo(httplib2.socks.PROXY_TYPE_HTTP_NO_TUNNEL, 'proxy.example.com', 8080, proxy_user = 'username', proxy_pass = 'password') ))
代理信息:
编辑:找到此https://github.com/jcgregorio/httplib2/wiki/Examples-Python3
在将第三方socks模块移植到Python 3之前,代理支持不可用。
那么我可以使用其他任何http库吗?
由于
编辑2 :对Google进行调查,显然根本不支持3.5,但这并不能解决我对python 3的httplib2问题。*
答案 0 :(得分: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())
答案 1 :(得分:0)
您可能还想查看他们关于他们的讨论,并希望您找到一些有用的想法。
答案 2 :(得分:0)
我感谢所有人的帮助 - 不幸的是谷歌(公司或他们的搜索结果)都没有任何解决方案,而且年终方法我没有时间通过手机运行所有任务。
如果有人对“修复”感兴趣:我只是回到python2.7并用它们的2.x等价替换了一些{** foo}类型语句。
干杯