У меня есть такой код который у меня скачивает почту и сортрует мне по папкам всяким и я хочу делать это через купленный прокси
но я по каким то причинам не могу подключится. На данноп этапе пишит ошибку вот такую :
Socket error: 0x06: TTL expired
Вобщем как мне предопределить метод чтобы подключатся к impap через прокси, в чем моя ошибка?
from imaplib import IMAP4, IMAP4_PORT, IMAP4_SSL_PORT,IMAP4_SSL
from socks import socksocket, PROXY_TYPE_SOCKS4, PROXY_TYPE_SOCKS5, PROXY_TYPE_HTTP
import ssl
class SOCKS_IMAP4_SSL(IMAP4_SSL):
def __init__(self, host, port = IMAP4_SSL_PORT, proxy = None,):
self.proxy = proxy
self.proxy_type = PROXY_TYPE_SOCKS5
IMAP4_SSL.__init__(self, host, port)
def open(self, host, port=IMAP4_SSL_PORT):
self.host = host
self.port = port
self.sock = socksocket()
#actual privoxy default setting, but as said, you may want to parameterize it
if self.proxy and self.proxy_type:
proxy_ip,proxy_port = self.proxy.split(':')
print('*')
self.sock.setproxy(self.proxy_type, proxy_ip,int(proxy_port))
print('**')
self.sock.connect((host,port))
print('777')
self.sslobj = ssl.wrap_socket(self.sock, self.keyfile, self.certfile)
self.file = self.sslobj.makefile('rb')
def imap_check_all(login, password,proxy_type, proxy, imap_server='imap.mail.ru'):
mail = SOCKS_IMAP4_SSL(imap_server,proxy_type, proxy)
mail.login(login, password)
... дальше код проверяющий и сортирующий почту по папкам ....
accaunt_doc='мой аккаунт'
прокси='мой прокси'
imap_check_all(login, password,PROXY_TYPE_SOCKS5,proxy_ip)
P.S. Прокси точно работает я вроде как проверял его