Wie kratze ich Daten auf einer Seite mit jquery button click mit HtmlAgility Pack

html-agility-pack web-crawler web-scraping

Frage

Ich versuche, Daten von einer Seite mit ähnlichem Inhalt (Shopping-Website) mit dem HtmlAgility-Paket zu scrappen.

Es gibt eine Schaltfläche, um mehr Elemente zu laden, die aus einem Tag bestehen. Beim Klicken lädt es mehr Elemente auf derselben Seite.

Wenn es mit einem Tag entworfen wird, dann werde ich die nächsten Elemente mit der href-Attribut-URL im Tag erhalten und ich werde auch eine neue Seite für die neuen nächsten Elemente laden. Also kein Problem.

Aber hier keine neue URL und Elemente auf der gleichen Seite geladen.

Gibt es eine Möglichkeit, diese Funktionalität zu implementieren? Wie löse ich diese Taste mehr, um mehr Gegenstände zu bekommen?

Akzeptierte Antwort

HtmlAgilityPack ist ein HTML-Parser, der nur ein statisches HTML-Dokument parsen kann. was Sie wollen, kann mit Selen-Web-Treiber erreicht werden .

Eine weitere Möglichkeit ist - wenn die Anzahl der Aktionen zum Laden von HtmlAgiliyPack so ist, dass Sie das Laden manuell abschließen können - tun Sie dies und speichern Sie das resultierende HTML lokal und verwenden HtmlAgiliyPack anschließend HtmlAgiliyPack , um das statische HTML, das Sie lokal gespeichert HtmlAgiliyPack zu analysieren (anstatt die HTTP-Antwort zu analysieren) ).

Teile den Link der Seite, über die du sprichst, damit ich einige Code-Snippets hinzufügen kann, um sie zu veranschaulichen.



Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum