Alle Kollektionen
FAQ
Warum kann Octoparse nur auf das erste Item klicken und dann stoppen?
Warum kann Octoparse nur auf das erste Item klicken und dann stoppen?
Vor über einer Woche aktualisiert

Wenn Sie eine Loop-Klick-Aktion bei der Erstellung eines Workflows nehmen, wird Octoparse standardmäßig jeden individuellen Link in einem neuen Tab laden. So wird es nie den Tab verlieren, der auf der Listeseite liegt, während es jeden Link in der Liste geöffnet wird und darauf klickt. Allerdings gibt es die speziellen Fälle, wenn die neue Seite nur direkt auf den aktuellen Tab geladen werden könnte. In diesem Fall könnte Octoparse nicht in der Lage, das zweite Item in der Liste zu laden, da es nicht mehr auf den ursprünglichen Eintrag zugreifen kann. Derart würden Sie eine Loop-Klick-Aktion erhalten, die nur auf das erste Item im Loop klicken würde, ohne die anderen Items auf der Liste weiterzugehen.


Wie kann ich wissen, ob mein Loop gut oder nicht funktionieren?

Sie können sehen, ob das Loop-Item jetzt beim manuellen Klicken durch die Aktion im Workflow korrekt funktioniert.

  • Schritt 1: Klicken Sie auf das „Loop Item“ nach dem Laden des Eintrages.

  • Schritt 2: Klicken Sie auf „Click Item“ und warten auf die neue Seite geladen zu werden.

  • Schritt 3: Klicken Sie auf das „Loop Item“ noch einmal, um es anzuschauen, ob Octoparse die Listeseite zeigt.

Loop Item

Wenn Sie die Listeseite sehen können, bedeutet es, dass Octoparse jetzt zu der Listeseite rückkehren kann und der Loop gut funktionieren soll. Außerdem müssen Sie sich selbst den Workflow modifizieren, um Ihren Loop gut funktionieren zu können. Folgend sind einige schnelle Lösungen, durch die Sie selbst Ihren Loop modifizieren können.


Lösung 1 Öffnen die Detail-Seite in einem neuen Tab

Für Webseiten, die das Öffnen von Links in einem neuen Tab unterstützen, gehen Sie zu den Einstellungen des Click-Items (man klickt es und öffnet dann eine neue Seite). Überprüfen Sie es, ob „Open in a new tab“ getickt ist. Wenn nicht, einfach ticken die Option, was Ihnen es helfen kann, die Ausgabe wieder zu lösen.

Open in a new tab

Tipps!

Wenn Sie den Schritt „Open in a new tab“ nicht verstehen oder einige Fragen danach haben, können Sie dieses Tutirial „Daten Scraping aus einem Tab“ lernen.


Lösung 2 Fügen einen Zurück-Button hinzu

Wenn das Loop-Item mit der Wahl von „Open in a new tab“ noch nicht korrekt funktionieren könnte, die neuen Seiten vielleicht nicht in einem neuen Tab geladen werden können.

In diesem Fall wird die neue Seite die Listeseite überschreiben, während sie lädt. So könnte Octoparse nicht in der ursprünglichen Listeseite zurückschalten.

Um dieses Problem zu lösen, schauen Sie jeden Button bitte an, der Sie vielleicht zurück zur ursprünglichen Listeseite führen will. Nach dem forlgenden Beispiel würde es der „Insurance“ Button darstellen. Wenn es einen Button wie so gibt, erstellen Sie bei der Nutzung davon eine Klick-Aktion. Dann wird es auf den „Insurance“ Button klicken und in der ursprünglichen Liste zurückschalten, wenn Octoparse eine Ausgabe der Datenextrahktion in einer neuen Seite beendet. Anschließend wird es die anderen Items auf der Liste zu durchschleifen fortführen.

  • Schritt 1: Klicken Sie auf den „Insurance“ Button.

  • Schritt 2: Wählen Sie „Click element“ oder „Click button“ an dem Tips-Panel.

Click element

  • Schritt 3: Stellen Sie „AJAX timeout“ ein, um es lang genug die Seite zu machen.

AJAX timeout

Der Workflow sollen wie so aussehen:

Workflow


Lösung 3 Fügen ein „Go to Web Page“ hinzu

Wenn „Open in a new tab“ gewählt und keinen „Back“ Button verfügbar ist, gibt es noch einen anderen Trick, die Sie versuchen können - fügen manuell eine „Go to Web Page“ Aktion hinzu, um Octoparse es zu helfen, in der ursprünglichen Listeseite zurückzuschalten.

Bewegen den Mauszeiger über den Workflow und fügen einen Schritt „Open Page“ in dem „Loop Item“ als den letzten Schritt hinzu. Diese Aktion wird immer die Listeseite wieder eröffnen, wenn Octoparse das Scrapen der gegenwärtigen Item-Seite beendet. Der Trick könnte vielleicht nicht so gut funktionieren, wenn Sie Daten einer von vielen Seiten geformten Liste scrapen möchten.

  • Schritt 1: Fügen Sie eine „Go to Web Page“ Aktion in dem Workflow hinzu.

Go to Web Page

  • Schritt 2: Kopieren Sie und fügen das URL in der Listeseite ein.

Kopieren und fügen das URL


Lösung 4 Teilen die Aufgabe in zwei Aufgaben

Schließlich können Sie es ständig versuchen, Ihre Aufgabe in zwei Aufgaben zu teilen. Gleichzeitig ist das unabhängig davon, wie lange Ihre Liste ist oder warum die Seite nicht in einem neuen Tab geladen werden kann. Eine der von zwei Aufgaben ist die in den Liste-Items eingebetteten URLs zu holen, der andere kann von jedem URL die spezielle Information extrahieren. Dieser Trick wirkt Wunder, denn er ist nicht nur zuverlässig, sondern macht den Scraping-Prozess auch viel effizienter, da man nicht zwischen den Tabs hin- und herwechseln muss.

Um den Scraping-Prozess weiter automatisch zu durchlaufen, können Sie die Aufgaben sogar durch dieses folgende Tutorial miteinander verknüpfen: Extraktion von Eingabe einer Stapel URLs.

Hat dies Ihre Frage beantwortet?