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, чтобы убедиться, что загрузка вашего документа завершена.