2016-07-08 17 views
0

Ich habe meinen allerersten Webscraper geschrieben, und ich versuche jetzt, die Daten in Excel-Dateien zu schreiben.Warum werden nur die ersten und letzten Einträge meiner Liste in die Datei geschrieben?

Dies ist der relevante Teil meines Programms:

with xlsxwriter.Workbook('test 2.xlsx') as workbook: 
    worksheet = workbook.add_worksheet("Doctissimo's diabetes sub-forum") 

    row = 0 
    col = 0 

    for time, handle, post, URL in list(zip(time_stamps, handles, post_contents, URLs)): 

     print(time, handle, URL) 

     worksheet.write(row, col, time) 
     worksheet.write(row, col+1, handle) 
     worksheet.write(row, col+2, post) 
     worksheet.write(row, col+3, URL) 

     row = +1 

Mein Problem ist, dass nur die erste und letzte Element jeder Liste (time_stamps, Griffe, post_contents, URLs) geschrieben werden einzureichen.

Die RV-Listen sind gleich lang (I geprüft print(len(list)), und die anderen Elemente sind nicht leer ist (auch mit print geprüft) verwendet wird. Was habe ich falsch gemacht?

+3

Meinst du "row + = 1" anstatt "row = + 1"? – zondo

+0

@zondo gutes Auge –

+0

Oh, ich kann nicht glauben, dass ich das tat! Vielen Dank! – Gabriel

Antwort

0

Eine Möglichkeit, systematisch einige Fehler zu finden ist verwenden Sie die print-Anweisung, Zeile soll jede Schleife um 1 erhöht werden, wenn Sie einen Druck Anweisung nach Zeile setzen, sollten Sie in der Lage sein zu sehen, was falsch ist.

row = +1 
print "row = %d" % row 

ich habe nicht gesehen, = +1 bei Das erste Mal aber der Wert der Zeile ändert sich nie

+0

Ich vergesse zu erwähnen, mit binärer Suche beim Debuggen eines langen Codes. –