HTTPlib.IncompleteRead Exception

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
rayo
User
Beiträge: 773
Registriert: Mittwoch 5. November 2003, 18:06
Wohnort: Schweiz
Kontaktdaten:

HTTPlib.IncompleteRead Exception

Beitragvon rayo » Sonntag 19. September 2004, 21:27

Hi

Ich downloade mit der HTTP-Lib Dateien herunter. Jedoch kommt ab und zu die Exception IncompleteRead. Woher kommt die? Hab nichts darüber in der Doku gefunden

Code: Alles auswählen

conn = httplib.HTTPConnection("files.xyz.de")
conn.request('GET',url,None,{'Referrer':"/index.php"})
r1 = conn.getresponse()
data = r1.read()
conn.close()


gruss
Benutzeravatar
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Beitragvon Dookie » Sonntag 19. September 2004, 21:53

Hi rayo,

ich würd mal die Rückmeldung (response) testen.

Code: Alles auswählen

conn = httplib.HTTPConnection("files.xyz.de")
conn.request('GET',url,None,{'Referrer':"/index.php"})
r1 = conn.getresponse()
if r1.reason == "OK":
    data = r1.read()
else:
    print "Fehler: %s" % r1.reason
conn.close()



Gruß

Dookie

Code: Alles auswählen

#!/usr/bin/env python
import this
rayo
User
Beiträge: 773
Registriert: Mittwoch 5. November 2003, 18:06
Wohnort: Schweiz
Kontaktdaten:

Beitragvon rayo » Sonntag 19. September 2004, 22:11

Hi

Danke für die Antwort. Leider ist reason und status immer OK oder 200.
Sind alles Zip-Dateien, aber daran sollte es ja nicht liegen.

Hat noch jemand eine Idee?

Gruss

*edit* Hab noch einen Text in einer Doku gefunden, vielleicht hilft das was, mir sagt dass nicht viel:
_safe_read(self, amt)
Read the number of bytes requested, compensating for partial reads.

Normally, we have a blocking socket, but a read() can be interrupted
by a signal (resulting in a partial read).

Note that we cannot distinguish between EOF and an interrupt when zero
bytes have been read. IncompleteRead() will be raised in this
situation.

This function should be used when <amt> bytes "should" be present for
reading. If the bytes are truly not available (due to EOF), then the
IncompleteRead exception can be used to detect the problem.
Benutzeravatar
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Beitragvon Dookie » Sonntag 19. September 2004, 22:38

aha, soviel ich da rauslese, tritt die Exception auf, um anzuzeigen, daß bei der Übertragung der Daten eine Unterbrechung aufgetreten ist, bzw. nicht die geforderte Anzahl an Bytes gelesen werden konnte.


Gruß

Dookie

Code: Alles auswählen

#!/usr/bin/env python
import this
rayo
User
Beiträge: 773
Registriert: Mittwoch 5. November 2003, 18:06
Wohnort: Schweiz
Kontaktdaten:

Beitragvon rayo » Sonntag 19. September 2004, 23:22

Hi

Dann muss ich wohl davon ausgehen dass beim server was falsch ist.

Danke

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder