Показать сообщение отдельно

  #11  
Старый 20.11.2009, 13:11
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме:
4512757

Репутация: 973


По умолчанию

Цитата:
Сообщение от cupper  
выкладывай, думаю лишнем не будет.
А что ты подразумеваешь под "модифицированной" библиотекой ? Это переопределенные функции в самом коде скрипта (по типу как ты сделал create_connection) или в самой библиотеке поправлено что то ?
Это замена метода __init__
на вот такой :
Код:
    def __init__(self, host, port=POP3_PORT,
                 timeout=socket._GLOBAL_DEFAULT_TIMEOUT, proxytype=None, proxyaddr=None, proxyport=None):
        self.host = host
        self.port = port
        self.sock = socks.socksocket()
        self.sock.setproxy(proxytype=proxytype, addr=proxyaddr, port=proxyport, rdns=True)
        self.sock.connect((host, port))
        if isinstance(timeout, int) or isinstance(timeout, str) or isinstance(timeout, float):
            self.sock.settimeout(float(timeout))
        self.file = self.sock.makefile('rb')
        self._debugging = 0
        self.welcome = self._getresp()
И добавление пары дополнительных атрибутов в саму poplib
Код:
HTTP_PROXY = socks.PROXY_TYPE_HTTP
SOCKS4_PROXY = socks.PROXY_TYPE_SOCKS4
SOCKS5_PROXY = socks.PROXY_TYPE_SOCKS5
Пример использования :

Код:
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sockspoplib

proxy_addr = "10.10.31.103"
proxy_type = sockspoplib.HTTP_PROXY
proxy_port = 3128
SERVER = "pop.mail.ru"
p = sockspoplib.POP3(SERVER, proxytype=proxy_type, proxyaddr=proxy_addr, proxyport=proxy_port)
print p.getwelcome()
Авторизация на прокси добавляется добавлением дополнительных параметров, но в твоих целях это неважно.
П.С. Прокси-чекером не обрадую, ибо таки по ходу снес. Гляну еще дома - мб там завалялось.

Последний раз редактировалось login999; 20.11.2009 в 13:16..
 
Ответить с цитированием