如何在 Python 中使用代理阅读电子邮件 - imaplib 库

问题描述

我创建了一个电子邮件阅读脚本,它可以正常使用来自 ISP 的 IP 地址,但是一旦我使用代理,它就无法连接。

我正在使用名为 911socks5 代理类型的代理服务,它“代理”了我的整个系统,因此当我连接到代理时,我在 chrome 中有代理连接、Firefox 和所有服务。

但是在使用代理时,连接似乎在 imaplib 中不起作用。我相信很多人都想使用代理阅读他们的电子邮件。有什么想法吗?

我听说它与 SSL 有关,需要降级,但我在网上找不到任何解决方案或经过验证的解决方案。

这是代码,无需代理即可:

user = 'my_emailaddress@gmail.com'

password = 'email_password'

imap_url = 'imap.gmail.com'

imap = imaplib.IMAP4_SSL(imap_url)

imap.login(user,password)

status,messages = imap.select("INBox")

messages = int(messages[0])

print(messages)

#Results
>> 9 

使用代理时出错:

Traceback (most recent call last):

File "C:\Users\Sfgam\.PyCharmCE2019.2\config\scratches\scratch_41.py",line 10,in <module>
    imap = imaplib.IMAP4_SSL(imap_url)

File "C:\Users\Sfgam\AppData\Local\Programs\Python\python39\lib\imaplib.py",line 1324,in __init__
    IMAP4.__init__(self,host,port,timeout)

File "C:\Users\Sfgam\AppData\Local\Programs\Python\python39\lib\imaplib.py",line 202,in __init__
    self.open(host,line 1337,in open
    IMAP4.open(self,line 312,in open
    self.sock = self._create_socket(timeout)
  
File "C:\Users\Sfgam\AppData\Local\Programs\Python\python39\lib\imaplib.py",line 1328,in _create_socket
    return self.ssl_context.wrap_socket(sock,File "C:\Users\Sfgam\AppData\Local\Programs\Python\python39\lib\ssl.py",line 500,in wrap_socket
    return self.sslsocket_class._create(
  
File "C:\Users\Sfgam\AppData\Local\Programs\Python\python39\lib\ssl.py",line 1040,in _create
    self.do_handshake()
 
File "C:\Users\Sfgam\AppData\Local\Programs\Python\python39\lib\ssl.py",line 1309,in do_handshake
    self._sslobj.do_handshake()

ssl.SSLEOFError: EOF occurred in violation of protocol (_ssl.c:1129)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)