Hi, On 17 February 2011 10:28, BJ Swope wrote: > Imap is not on port 443. IIRC, it's late and I'm to lazy to even google it > right now, but it's port 143 isn't it.
I have tried that, and I get the following with imaplib: Traceback (most recent call last): File "D:\MyProjects\gmail.py", line 17, in <module> m = imaplib.IMAP4_SSL('imap.gmail.com', 143) File "C:\Python26\lib\imaplib.py", line 1138, in __init__ IMAP4.__init__(self, host, port) File "C:\Python26\lib\imaplib.py", line 163, in __init__ self.open(host, port) File "C:\Python26\lib\imaplib.py", line 1149, in open self.sock = socket.create_connection((host, port)) File "C:\Python26\lib\socket.py", line 514, in create_connection raise error, msg socket.error: [Errno 10061] No connection could be made because the target machine actively refused it And this one with libgmail: Traceback (most recent call last): File "D:\MyProjects\gmail2.py", line 8, in <module> ga.login() File "C:\Python26\lib\site-packages\libgmail.py", line 305, in login pageData = self._retrievePage(req) File "C:\Python26\lib\site-packages\libgmail.py", line 348, in _retrievePage resp = self.opener.open(req) File "C:\Python26\lib\site-packages\mechanize\_opener.py", line 193, in open response = urlopen(self, req, data) File "C:\Python26\lib\site-packages\mechanize\_urllib2_fork.py", line 344, in _open '_open', req) File "C:\Python26\lib\site-packages\mechanize\_urllib2_fork.py", line 332, in _call_chain result = func(*args) File "C:\Python26\lib\site-packages\mechanize\_urllib2_fork.py", line 1171, in https_open return self.do_open(conn_factory, req) File "C:\Python26\lib\site-packages\gmail_transport.py", line 143, in do_open return ClientCookie.HTTPSHandler.do_open(self, ProxyHTTPSConnection.new_auth(self.proxy, self.proxy_user, self.proxy_passwd), req) File "C:\Python26\lib\site-packages\mechanize\_urllib2_fork.py", line 1118, in do_open raise URLError(err) urllib2.URLError: <urlopen error [Errno 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or establishe d connection failed because connected host has failed to respond> :-( :-( Thank you for your answer. > On Wed, Feb 16, 2011 at 11:58 PM, Andrea Gavana <andrea.gav...@gmail.com> > wrote: >> >> Hi All, >> >> I apologize in advance if I'm going to write very stupid things, >> my expertise in http/socket/imap stuff is very close to zero. I'm >> using Python 2.6.5 on Windows XP SP3. >> >> I am trying to access my GMail account from my office, and it appears >> our company's firewall is blocking all SMTP/POP3/IMAP attempts or >> there is simply something I don't understand. My first try was to use >> imaplib as follows: >> >> >> import imaplib >> >> m = imaplib.IMAP4_SSL('imap.gmail.com', 443) >> m.login(username, password) >> >> >> And I get the following: >> >> >> Traceback (most recent call last): >> File "D:\MyProjects\gmail.py", line 17, in <module> >> m = imaplib.IMAP4_SSL('imap.gmail.com', 443) >> File "C:\Python26\lib\imaplib.py", line 1138, in __init__ >> IMAP4.__init__(self, host, port) >> File "C:\Python26\lib\imaplib.py", line 163, in __init__ >> self.open(host, port) >> File "C:\Python26\lib\imaplib.py", line 1150, in open >> self.sslobj = ssl.wrap_socket(self.sock, self.keyfile, self.certfile) >> File "C:\Python26\lib\ssl.py", line 350, in wrap_socket >> suppress_ragged_eofs=suppress_ragged_eofs) >> File "C:\Python26\lib\ssl.py", line 118, in __init__ >> self.do_handshake() >> File "C:\Python26\lib\ssl.py", line 293, in do_handshake >> self._sslobj.do_handshake() >> ssl.SSLError: [Errno 8] _ssl.c:480: EOF occurred in violation of protocol >> >> >> OK. Then I googled back and forth for a possible solution, and I got a >> hint that (maybe) the problem could be related to proxy >> authentication. And I tried this solution (which uses SocksiPy) I >> found on the web (username2 and password2 are the user name and >> password for our company's proxy): >> >> import socks >> import socket >> >> proxy_ip = "10.100.100.20" # Your proxy IP/DNS here >> >> socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, proxy_ip, 8080, True, >> username2, password2) >> socket.socket = socks.socksocket >> >> import imaplib >> >> m = imaplib.IMAP4_SSL('imap.gmail.com', 443) >> m.login(username, password) >> >> >> This solution just hangs forever at the line: >> >> m = imaplib.IMAP4_SSL('imap.gmail.com', 443) >> >> And it never returns (it never gets to the m.login() stuff). >> >> >> Then I tried with libgmail, giving it the option of setting the proxy >> name and port: >> >> import libgmail >> >> # Connect from behind a proxy www.myproxy.org:3128 using >> # proxy authentication user = 'john', password = 'proxy4321' >> libgmail.PROXY_URL = username2:password2@my_company_proxy:443' # >> Define the proxy >> >> ga = libgmail.GmailAccount(username, password) >> ga.login() >> >> >> And I got this at first: >> >> Traceback (most recent call last): >> File "D:\MyProjects\gmail2.py", line 8, in <module> >> ga.login() >> File "C:\Python26\lib\site-packages\libgmail.py", line 305, in login >> pageData = self._retrievePage(req) >> File "C:\Python26\lib\site-packages\libgmail.py", line 340, in >> _retrievePage >> req = ClientCookie.Request(urlOrRequest) >> File "C:\Python26\lib\site-packages\mechanize\_request.py", line 31, >> in __init__ >> if not _rfc3986.is_clean_uri(url): >> File "C:\Python26\lib\site-packages\mechanize\_rfc3986.py", line 63, >> in is_clean_uri >> return not bool(BAD_URI_CHARS_RE.search(uri)) >> TypeError: expected string or buffer >> >> >> Then I brutally hacked into mechanize here and there and I was able to >> fix all non-internet related errors. And when I try the libgmail >> solution above now I get: >> >> Traceback (most recent call last): >> File "D:\MyProjects\gmail2.py", line 8, in <module> >> ga.login() >> File "C:\Python26\lib\site-packages\libgmail.py", line 305, in login >> pageData = self._retrievePage(req) >> File "C:\Python26\lib\site-packages\libgmail.py", line 348, in >> _retrievePage >> resp = self.opener.open(req) >> File "C:\Python26\lib\site-packages\mechanize\_opener.py", line 193, in >> open >> response = urlopen(self, req, data) >> File "C:\Python26\lib\site-packages\mechanize\_urllib2_fork.py", >> line 344, in _open >> '_open', req) >> File "C:\Python26\lib\site-packages\mechanize\_urllib2_fork.py", >> line 332, in _call_chain >> result = func(*args) >> File "C:\Python26\lib\site-packages\mechanize\_urllib2_fork.py", >> line 1171, in https_open >> return self.do_open(conn_factory, req) >> File "C:\Python26\lib\site-packages\gmail_transport.py", line 145, in >> do_open >> return ClientCookie.HTTPSHandler.do_open(self, >> ProxyHTTPSConnection.new_auth(self.proxy, self.proxy_user, >> self.proxy_passwd), req) >> File "C:\Python26\lib\site-packages\mechanize\_urllib2_fork.py", >> line 1118, in do_open >> raise URLError(err) >> urllib2.URLError: <urlopen error Tunnel connection failed: 403 >> Forbidden ( The ISA Server denied the specified Uniform Resource >> Locator (URL). )> >> >> >> Just in case, I have tried also with port 80, with similar results: >> >> Traceback (most recent call last): >> File "D:\MyProjects\gmail2.py", line 8, in <module> >> ga.login() >> File "C:\Python26\lib\site-packages\libgmail.py", line 305, in login >> pageData = self._retrievePage(req) >> File "C:\Python26\lib\site-packages\libgmail.py", line 348, in >> _retrievePage >> resp = self.opener.open(req) >> File "C:\Python26\lib\site-packages\mechanize\_opener.py", line 193, in >> open >> response = urlopen(self, req, data) >> File "C:\Python26\lib\site-packages\mechanize\_urllib2_fork.py", >> line 344, in _open >> '_open', req) >> File "C:\Python26\lib\site-packages\mechanize\_urllib2_fork.py", >> line 332, in _call_chain >> result = func(*args) >> File "C:\Python26\lib\site-packages\mechanize\_urllib2_fork.py", >> line 1171, in https_open >> return self.do_open(conn_factory, req) >> File "C:\Python26\lib\site-packages\gmail_transport.py", line 145, in >> do_open >> return ClientCookie.HTTPSHandler.do_open(self, >> ProxyHTTPSConnection.new_auth(self.proxy, self.proxy_user, >> self.proxy_passwd), req) >> File "C:\Python26\lib\site-packages\mechanize\_urllib2_fork.py", >> line 1118, in do_open >> raise URLError(err) >> urllib2.URLError: <urlopen error Tunnel connection failed: 407 Proxy >> Authentication Required ( The ISA Server requires authorization to >> fulfill the request. Access to the Web Proxy filter is denied. )> >> >> >> What am I doing wrong? Is there anything I should do differently? Or >> anything else I should try? >> >> Thank you for your help, any suggestion is highly appreciated. >> >> >> Andrea. >> >> "Imagination Is The Only Weapon In The War Against Reality." >> http://xoomer.alice.it/infinity77/ >> >> ==> Never *EVER* use RemovalGroup for your house removal. You'll >> regret it forever. >> http://thedoomedcity.blogspot.com/2010/03/removal-group-nightmare.html <== >> -- >> http://mail.python.org/mailman/listinfo/python-list > > -- Andrea. "Imagination Is The Only Weapon In The War Against Reality." http://xoomer.alice.it/infinity77/ ==> Never *EVER* use RemovalGroup for your house removal. You'll regret it forever. http://thedoomedcity.blogspot.com/2010/03/removal-group-nightmare.html <== -- http://mail.python.org/mailman/listinfo/python-list