Ich arbeite an einem Stück Code, in dem ich alle Links von einer bestimmten Webseite extrahieren muss. Ich benutze die Komponente EmbeddedWB, weil ich auch die aktuelle Seite anzeigen muss. Ich habe eine einfache Seite, die in den EmbeddedWB geladen wird und einige Skripte enthält, die einige URLs mit der Funktion "document.write" von JavaScript erzeugen. Ich habe so etwas wie dies theoretisch:JavaScript-generierte Links in Delphi extrahieren
<html>
<body>
<a href=#>No problem Here<a/>
<script Language="JavaScript">
var random=Math.floor(Math.random()*11);
document.write("<a href=\"index"+random+".html\"> I Can’t catch this link! </a>");
</script>
</body>
</html>
durch die Funktion ViewPageLinksToStrings mit (LinksList: TStrings) der Komponente I wie erhalten die URL erwartet im Quellcode gefunden, aber meine Absicht ist, die Links zu fangen, dass werden auch mit JavaScript generiert.
Was wäre der beste Weg, dies zu tun? Gibt es eine Bibliothek, die ich benutzen kann?
Vielen Dank für Ihre Zeit. John Marko
Verschiedene Web-Browser können „show Seite Quelle“ anders in dieser Hinsicht. Ich vergesse, welcher bestimmte Browser, aber ich erinnere mich an mindestens einen, der Ihnen die "letzte" Quelle zeigt, d. H. Was das Javascript ausstrahlte, anstatt die js selbst. Das Einbetten eines solchen Browsers kann Ihnen dabei helfen ... Alternativ dazu, wie Sie das DOM durchgehen, um Links zu finden? Das DOM muss alle Links enthalten, einschließlich derjenigen, die von JS generiert wurden. –