Я хочу получить ссылки с помощью консоли c # с веб-сайта, используя html agility pack, но есть код java-скрипта, написанный в тегах li и href, почему java-скрипт изменяет код при нажатии. Я не знаю, пожалуйста, скажите мне, как получить реальный код
<li onmouseover="activate_menu('top-menu-61', 61); void(0);" onmouseout="deactivate_menu('top-menu-61', 61);"><a href="javascript:void();
я могу просто увидеть это в моем ли и теге, как решить это и получить актуальный html, чтобы я мог получить ссылки furthur
Попробуйте использовать инструменты автоматизации браузера, такие как Selenium WebDriver, чтобы полностью создать веб-страницу, используя настоящий браузер, прежде чем передавать его в HtmlAgilityPack для синтаксического анализа. Использование селена должно быть достаточно простым, как показано ниже. Вам нужно только убедиться, что все необходимые инструменты (библиотека Selenium и драйвер браузера по выбору) установлены правильно заранее:
// 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 также предоставляет способы поиска элементов внутри страницы, поэтому, если хотите, можно полностью заменить HAP Selenium.