Ich möchte die Links mit c # -Konsole von einer Website mit HTML-Agility-Pack, aber es ist Java-Skript-Code in li und href-Tag, warum Java-Skript ändert Code auf Klick ich weiß nicht, bitte sagen Sie mir die Lösung, wie t erhalten tatsächlichen Code
<li onmouseover="activate_menu('top-menu-61', 61); void(0);" onmouseout="deactivate_menu('top-menu-61', 61);"><a href="javascript:void();
ich kann gerade dieses in meinem Li und in einem Umbau sehen, wie man dieses löst und tatsächlichen HTML erhält, also kann ich Verbindungen furthur erhalten
Verwenden Sie Browser-Automatisierungstools wie Selenium WebDriver , um eine Webseite vollständig zu generieren, indem Sie einen echten Browser verwenden, bevor Sie sie zur Analyse an HtmlAgilityPack übergeben. Die Verwendung von Selen sollte ziemlich einfach sein, wie unten beispielhaft dargestellt. Sie müssen nur sicherstellen, dass alle benötigten Tools (Selenium-Bibliothek und Browser-Treiber der Wahl) im Vorfeld korrekt installiert sind:
// Initialize the Chrome Driver (or any other supported browser)
using (var driver = new ChromeDriver())
{
// open the target page
driver.Navigate().GoToUrl("the_targt_page_url_here");
//maybe add selenium waits if needed,
//to wait until certain element appear in the page
//pass the HTML page to HAP's HtmlDocument
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(driver.PageSource);
}
Selenium bietet auch Möglichkeiten, Elemente innerhalb einer Seite zu finden, so dass es möglich ist, HAP vollständig durch Selenium zu ersetzen, wenn Sie möchten.