2008-09-18 18 views
13

Wróciłem dziś do starego skryptu, który miałem do logowania do Gmaila przez SSL. Skrypt pracował dobrze ostatni raz prowadził ją (kilka miesięcy temu), ale teraz umiera natychmiast:Gniazda Pythona nagle przestają działać?

<urlopen error The read operation timed out> 

Jeżeli ustawić limit czasu (bez względu na to jak długo), umiera nawet bardziej bezpośrednio z:

<urlopen error The connect operation timed out> 

Ten ostatni jest powtarzalny z:

import socket 
socket.setdefaulttimeout(30000) 
sock = socket.socket() 
sock.connect(('www.google.com', 443)) 
ssl = socket.ssl(sock) 

powrocie:

socket.sslerror: The connect operation timed out 

ale nie mogę odtworzyć tego pierwszego i po przejściu przez kod, nie mam pojęcia, co powoduje to wszystko.

+0

Jaka jest wersja Pythona? – Jim

+0

Podaj więcej informacji. Nie mogę odtworzyć twojego problemu. –

+0

Platforma też by pomogła. –

Odpowiedz

0

www.google.com jest niedostępny przez HTTPS. Przekierowuje do niezabezpieczonego HTTP. Aby dostać się do poczty, powinien być zamiar iść https://mail.google.com

+2

$ curl -i https://www.google.com/ HTTP/1.1 302 Znaleziono [...] – aaronsw

1
import socket 
socket.setdefaulttimeout(30000) 
sock = socket.socket() 
sock.connect(('www.google.com', 443)) 
ssl = socket.ssl(sock) 
ssl.server() 
--> '/C=US/ST=California/L=Mountain View/O=Google Inc/CN=www.google.com' 

To działa dobrze. Nie mogę odtworzyć twojego błędu.

0

Pierwszą rzeczą, którą chciałbym sprawdzić, jest to, czy musisz połączyć się za pośrednictwem serwera proxy HTTP (w takim przypadku połączenie bezpośrednie z pominięciem serwera proxy prawdopodobnie przestanie działać). Uruchom Wireshark i zobacz, co się stanie.

Powiązane problemy