2016-04-08 3 views
-1

Ich schreibe ein Programm für die Schule, und ich bin auf ein Problem gestoßen. Es ist ein Webcrawler, und manchmal kann es über 24 Stunden auf einer URL hängen bleiben. Ich habe mich gefragt, ob es eine Möglichkeit gibt, die while-Schleife fortzusetzen und zur nächsten URL zu gehen, wenn sie eine bestimmte Zeit benötigt. DankeWie ein Programm zu töten, wenn es zu lange läuft

+0

Geben Sie eine Zeitüberschreitung in der Bibliothek an, die Sie zum Senden Ihrer HTTP-Anforderungen verwenden. – ThiefMaster

+0

Das hängt von der Bibliothek ab, die Sie zum Abrufen der URL verwenden. Suchen Sie in der Dokumentation nach einer Art von Timeout-Parametern. – JETM

+0

Der Teil, der am längsten dauert, ist das Hinzufügen der Liste der Verknüpfungen zu einem Wörterbuch. wörterbuch [seite] = outlinks –

Antwort

0

Wenn Sie urllib in Python 3 verwenden, können Sie das timeout Argument in der urllib.request.urlopen(url, timeout=<t in secs>) verwenden. Dieser Parameter wird für alle Blockierungsoperationen verwendet, die intern von urllib verwendet werden.

Wenn Sie jedoch eine andere Bibliothek verwenden, konsultieren Sie das Dokument oder erwähnen Sie in der Frage.

+0

Der Teil, der am längsten dauert, ist das Hinzufügen der Liste der Verknüpfungen zu einem Wörterbuch. wörterbuch [seite] = outlinks –

+0

Das ist der Teil, den ich suche zu töten –

+0

welches Wörterbuch ?? –

Verwandte Themen