Bertel Lund Hansen
2008-10-21 21:40:19 UTC
Hej alle
Jeg bakser med et problem med at læse headers i usenetindlæg.
Jeg bruger en metode hvor jeg splitter linjen ved kolon:
headtag,headvalue=headline.split(':',1)
Det giver problemer hvis der ikke er noget kolon. Eksempel:
Content-Type: text/plain;
format=flowed;
charset="iso-8859-1";
reply-type=original
Content-Transfer-Encoding: 8bit
Senere skal jeg aflæse disse speciallinjer, men lige nu vil jeg bare skippe dem.
Løkken starter her:
for h in range(len(headlines)):
headline=headlines[h]
Og her er testen:
if headtag=='content-type' or headtag=='content-transfer-encoding':
while headlines[h+1][0] in string.whitespace: h+=1
continue
Men det ser ikke ud til at man kan få lov at modificere løkke-variablen.
Programmet hænger (fordi jeg har indlagt en nødbremse) ved linjen
format=flowed;
som bearbejdes som en normal linje hvilket jeg netop ville undgå.
Det giver nemlig fejl ved .split(,1) der skal bruge 2 elementer.
Hvordan løser jeg det problem? Skal jeg virkelig opbygge min løkke selv?
h=0
while enmasse:
h+=1
osv.
Jeg bakser med et problem med at læse headers i usenetindlæg.
Jeg bruger en metode hvor jeg splitter linjen ved kolon:
headtag,headvalue=headline.split(':',1)
Det giver problemer hvis der ikke er noget kolon. Eksempel:
Content-Type: text/plain;
format=flowed;
charset="iso-8859-1";
reply-type=original
Content-Transfer-Encoding: 8bit
Senere skal jeg aflæse disse speciallinjer, men lige nu vil jeg bare skippe dem.
Løkken starter her:
for h in range(len(headlines)):
headline=headlines[h]
Og her er testen:
if headtag=='content-type' or headtag=='content-transfer-encoding':
while headlines[h+1][0] in string.whitespace: h+=1
continue
Men det ser ikke ud til at man kan få lov at modificere løkke-variablen.
Programmet hænger (fordi jeg har indlagt en nødbremse) ved linjen
format=flowed;
som bearbejdes som en normal linje hvilket jeg netop ville undgå.
Det giver nemlig fejl ved .split(,1) der skal bruge 2 elementer.
Hvordan løser jeg det problem? Skal jeg virkelig opbygge min løkke selv?
h=0
while enmasse:
h+=1
osv.
--
Bertel
http://bertel.lundhansen.dk/ FIDUSO: http://fiduso.dk/
Bertel
http://bertel.lundhansen.dk/ FIDUSO: http://fiduso.dk/