gpt4 book ai didi

multithreading - SSL.SSLError : [SSL: WRONG_VERSION_NUMBER] Gmail when Threaded

转载 作者:太空宇宙 更新时间:2023-11-03 13:02:31 24 4
gpt4 key购买 nike

我能够获得包含 Python 查询的电子邮件列表,但是当我从线程中运行代码时,出现错误:

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 之上。

作为解决方法,您可以为每个命令执行方法提供一个新的 http 对象实例。

以我为例

service.labels().list().execute()

变成:

service.users().labels().list(userId=user_id)\
.execute(http=self.__get_credentials().authorize(httplib2.Http()))

关于multithreading - SSL.SSLError : [SSL: WRONG_VERSION_NUMBER] Gmail when Threaded,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46697969/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com