Awesomium - Как получить HTML-код веб-страницы?

Это моя лучшая попытка, но, похоже, она не возвращает тело html (я получаю только головную часть).

Dim page_source As String = DirectCast((From k In DirectCast(Reflection.Type _
            Info.GetTypeFromHandle(WebControl2.GetType.TypeHandle),  _
            Reflection.TypeInfo).DeclaredMembers Where k.Name = "qnTkKOiivD"). _
            First, FieldInfo).GetValue(WebControl1)

"qnTkKOiivD" - это имя частной собственности, которая содержит то, что, по-видимому, является источником страниц в Awesomium WebControl.

2 ответа

Решение

Существует даже более простой способ, чем использование JavaScript. Должно быть свойство под названием HTML на вашем WebView, который дает HTML.

РЕДАКТИРОВАТЬ:

По-видимому, была ошибка, из-за которой свойство возвращало только <head> тег. Эта ошибка устранена в последней обновленной версии (1.7.5.0).

Вы можете получить HTML-код от Awesomium WebControl довольно легко и даже без отражения с помощью его метода ExecuteJavascriptWithResult.

Что-то вроде этого:

_WebControl.ExecuteJavascriptWithResult("document.body.innerHTML");

Обратите внимание, что вы должны обработать событие DocumentReady, чтобы убедиться, что загрузка вашего документа завершена.

Другие вопросы по тегам