获取网站的 html 到文本框

Get website's html to a textbox

我正在尝试此操作,但不断收到错误消息,指出 gecko 不包含 innerHTML 的定义..

GeckoElement g2element = null;
g2element = (GeckoElement)mainbrowsersrc.Document.GetElementByTagName("html");
rich1.Text = g2element.InnerHtml; // 48.066

  rich1.Text = mainbrowsersrc.Document.GetElementsByTagName("html").innerHtml;

如果您需要整个页面的 HTML,那么您应该使用

(mainbrowsersrc.Document.DocumentElement as Gecko.DOM.GeckoHtmlHtmlElement)?.InnerHtml;

请注意,您收到的错误是因为没有方法 .GetElementByTagName(name); - 方法被调用 GetElementsByTagName(name) - 复数形式。

这是因为 tg 名称 不是唯一的 并且方法 returns 具有相同标签的元素的集合名称 - 例如 li(列表项)元素的集合。

因此,如果您想通过标签名称获取特定元素,您应该这样做:

string html = mainbrowsersrc.Document.GetElementsByTagName("html").FirstOrDefault().innerHtml;
//or 
html = mainbrowsersrc.Document.GetElementsByTagName("html")[0].innerHtml;