ssl.SSLError:SSL:WRONG_VERSION_NUMBER] Gmail的螺纹时
问题描述:
我能然而,当我运行代码即可获得包含在Python查询电子邮件列表从一个线程中我得到的错误:ssl.SSLError:SSL:WRONG_VERSION_NUMBER] Gmail的螺纹时
ssl.SSLError: [SSL: WRONG_VERSION_NUMBER]
这里就是我我打电话线程:
Thread(target=get_messages_for_label, args=({'recruitment'})).start()
在这条线上出现的错误:
response = service.users().labels().list(userId=user_id).execute()
然而,当我る它没有线程(作为一个简单的方法调用)它工作正常。
因为在启动线程和发生错误之间有相当多的方法调用,所以很难共享代码。
任何帮助,将不胜感激。
答
我刚刚发现这篇文章:https://developers.google.com/api-client-library/python/guide/thread_safety。
根据文档,Gmail API建立在不是线程安全的Httplib2之上。
作为解决方案,您可以为每个命令的execute方法提供一个http对象的新实例。
在我的情况
service.labels().list().execute()
变为:
service.users().labels().list(userId=user_id)\
.execute(http=self.__get_credentials().authorize(httplib2.Http()))