Heim >Backend-Entwicklung >Python-Tutorial >Fallstricke bei Python-Multithread-Crawlern
Python-Multithread-Crawler-Methoden umfassen Funktions- und Klassenobjektmethoden. 1. Funktioneller start_new_thread(func,args[]). Das Codebeispiel lautet wie folgt:
Abbildung 1: Funktionales Multithreading
2. Das Codebeispiel der Klassenobjektmethode zum Aufrufen Die Thread-Klasse lautet wie folgt:
Abbildung 2: Multithread-Codestruktur und -prozess des Klassenobjekts:
Einführung in das Threading Modul
Unterklassen definieren myThread erbt die threading.Thread-Klasse.
Definieren Sie die run()-Methode der übergeordneten Klasse Thread neu und führen Sie den darin enthaltenen Funktionscode aus
Instanziieren Sie das Thread-Objekt
Starten Sie die Ausführung des Threads start()
Treten Sie der Thread-Warteschlange bei, bis die Ausführung abgeschlossen ist, join().
Aufgetretene Probleme:
Bei der Definition einer Unterklasse ist ein Fehler in der Definition der Klasse und der Referenzmethode print_time() innerhalb der Klasse aufgetreten. Der spezifische Code und der Fehler werden angezeigt in Abbildung 2 und Abbildung 3 dargestellt.
Abbildung 2: Fehlercode
Abbildung 3: Fehlermeldung
2 .Probleme beim Crawlen von http://www.78b2b.com/lianghuizhuanti/324826_1.html-Webseiteninformationen im spezifischen Anwendungsprozess. Der spezifische Code ist in Abbildung 4 dargestellt:
Abbildung 4: Spezifischer Anwendungscode
Die Absicht Der Code besteht darin, Multithreading zu verwenden, um den Arbeitsbericht der Regierung von Liaoning 2020 von 13 Webseiten zu crawlen und ihn in einer lokalen TXT-Datei zu speichern. Während des Ausführungsprozesses werden alle Webseiten geöffnet, aber die TXT-Speicherdaten sind unvollständig und der Inhalt wird immer wieder geschrieben.
Das obige ist der detaillierte Inhalt vonFallstricke bei Python-Multithread-Crawlern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!