Heim  >  Artikel  >  Backend-Entwicklung  >  Fallstricke bei Python-Multithread-Crawlern

Fallstricke bei Python-Multithread-Crawlern

鸟救山
鸟救山Original
2020-05-20 11:03:05118Durchsuche

Python-Multithread-Crawler-Methoden umfassen Funktions- und Klassenobjektmethoden. 1. Funktioneller start_new_thread(func,args[]). Das Codebeispiel lautet wie folgt:

Fallstricke bei Python-Multithread-Crawlern

Abbildung 1: Funktionales Multithreading

2. Das Codebeispiel der Klassenobjektmethode zum Aufrufen Die Thread-Klasse lautet wie folgt:

Fallstricke bei Python-Multithread-Crawlern

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.

Fallstricke bei Python-Multithread-Crawlern

Abbildung 2: Fehlercode

Fallstricke bei Python-Multithread-Crawlern

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:

Fallstricke bei Python-Multithread-Crawlern

Fallstricke bei Python-Multithread-Crawlern

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn