Ich habe in einem Ordner mehrere Dateien, die ich alle öffnen, eine Zeile rauskopieren und in einer txt-Datei sammeln will. Anschließend soll diese txt-Datei direkt geöffnet werden.
Wie man sieht, hab ich ein try-except drin. Es gab nämlich immer die IndexError-Fehlermeldung im Terminal - die Daten wurden dennoch korrekt in der txt-Datei gesammelt. Daher dieses quick&dirty-handling. Lieber wärs mir allerdings, wenn mir jemand erklären könnte, warum ich diesen Fehler habe, bzw. wie ich den ausmerzen kann. Es gibt definitiv jeweils mehr als zwei splits; "IndexError" kanns also nicht wirklich sein?
Das zweite Problem: Die Datei wird zwar am Ende geöffnet, aber sie ist leer. Öffne ich die Datei "per Hand", sind alle Daten da. Nur im Pluma wird kein Inhalt angezeigt.
Wenn Pluma allerdings vorher schon geöffnet ist, wird alles richtig angezeigt.
Kann mir da wer helfen?
Code: Alles auswählen
#!/usr/bin/python3.10
# coding=utf-8
import os
jm = input('jjjj/mm angeben: ')
PFAD = f'/media/ich/daten/projekt/{jm}'
sammeln = open(f'{PFAD}/sammeln.txt', 'a')
daten = os.listdir(f'/media/ich/daten/projekt/{jm}')
for i in sorted(daten):
if i.endswith('.html'):
suchen = open(f'{PFAD}/{i}', 'r')
zeile = suchen.read()
suchen.close
try:
liste = zeile.split('class="stat">')
liste = liste[1].split('</tr>')[0]
sammeln.write(f'{liste}</tr>')
except IndexError:
pass
sammeln.close
os.system(f'pluma {PFAD}/sammeln.txt')