Python - zpracování dat ze souboru cyklem - jak uložit poslední dokončený řádek a pokračovat dále

Python - zpracování dat ze souboru cyklem - jak uložit poslední dokončený řádek a pokračovat dále

Dobrý den,

když iteruji cyklem textový soubor v python skriptu a skript spadne, tak skript pokračuje od začátku (od první řádky) - já bych potřeboval, aby si skript (cyklus) pamatoval na které řádce skončil a z toho místa pokračoval dál ve zpracování. Jak byste to jednoduše řešili? Děkuji

ODPOVĚĎ

Dobrý den,

je možné to udělat jako v příkladu níže.

Python načte soubor emails.txt, kde provádí iterace emailů řádku po řádce.
Zpracovaný řádek ukládá do emails_state.txt .
Při opětovném spuštění pokračuje tam kde skript skončil pomocí podmínky if not line in array_state:

    def getEmail(self):
        # if exist file
        try:
            f = open("emails_state.txt")
        # create temp file
        except IOError:
            with open("emails_state.txt", "w") as create_file:
                create_file.write('')

        # get first and last line
        with open("emails_state.txt", "r") as file:
            first_line = file.readline()
            for last_line in file:
                pass

        # create array
        with open("emails_state.txt", "r") as file:
            array_state = file.readlines()

        # file loop
        fileHandler = open ("emails.txt", "r")
        while True:
            line = fileHandler.readline()
            if not line :
                break;
            if not line in array_state:
                print(line.strip())
                with open("emails_state.txt", "a") as es:
                    es.write(line)
                time.sleep(1)

        # file close
        fileHandler.close()
Jak se ti článek líbil?

Komentáře (0)

Přidat komentář