获取网站的 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;
我正在尝试此操作,但不断收到错误消息,指出 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;