Есть ли способ заставить NHTMLUNIT игнорировать ошибки JavaScript страницы и продолжить Script Выполнение?
Я являюсь частью проекта ASP.NET и С#. Мы пытаемся сделать наш портал asp.net Google дружественным поисковым системам (https://developers.google.com/webmasters/ajax-crawling/). Веб-страницы на нашем сайте генерируются динамически, а DOM модифицируется с помощью JavaScript, поэтому мы используем NHTML для создания моментального снимка (на стороне сервера), когда поисковая система Google отправляет запрос. Он генерирует моментальный снимок HTML, но проблема в том, что на странице есть ошибка script, она возвращает частично отображаемую страницу (содержимое, которое изменяется на странице JavaScript, частично отображается). Страницы отлично работают в браузерах.
Я попробовал следующие опции
ThrowExceptionOnScriptError = false,
ThrowExceptionOnFailingStatusCode = false
Но нет LUCK.
Есть ли способ заставить NHtmlUnit игнорировать ошибки страницы и продолжить выполнение?
Ниже приведен код
// Create a webclient.
WebClient webClient = new WebClient(BrowserVersion.FIREFOX_17)
{
ThrowExceptionOnScriptError = false,
ThrowExceptionOnFailingStatusCode = false
};
webClient.WaitForBackgroundJavaScript(5000);
// Load the Page with the given URL.
HtmlPage htmlPage = webClient.GetHtmlPage(url);
// Return the page for the given URL as Text.
return htmlPage.WebResponse.ContentAsString;
Ответы
Ответ 1
// Create a webclient.
WebClient webClient = new WebClient(BrowserVersion.FIREFOX_17)
{
JavaScriptEnabled = true
ThrowExceptionOnScriptError = false,
ThrowExceptionOnFailingStatusCode = false,
};
webClient.WaitForBackgroundJavaScript(5000);
HtmlPage htmlPage = webClient.GetHtmlPage(url);
// Return the page for the given URL as Text.
return htmlPage.WebResponse.ContentAsString;
Я заметил, что вы не включили JavaScript, извините, если я ошибаюсь.