Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Can Webbrowser控制手柄“;“坏的”;HTML?_C#_Html_.net_Browser - Fatal编程技术网

C# Can Webbrowser控制手柄“;“坏的”;HTML?

C# Can Webbrowser控制手柄“;“坏的”;HTML?,c#,html,.net,browser,C#,Html,.net,Browser,我正在使用C#中的Webbrowser控件,并试图访问文档中的一些HTML元素。 问题是,文档正文只包含五分之二的子项。(http://www.target.com/cart/ref=nav_sc_rev_checkout). 因此我无法访问主体中的特定元素,尽管它在UI中呈现良好 我怀疑正文中有错误的HTML,因此文档树已损坏 有没有办法处理这个问题,因为它仍然呈现出很好的效果 谢谢 更新: 问题是DocumentCompleted事件被触发,但是文档没有被完全解析,所以我只得到了5个元素中的

我正在使用C#中的Webbrowser控件,并试图访问文档中的一些HTML元素。 问题是,文档正文只包含五分之二的子项。(http://www.target.com/cart/ref=nav_sc_rev_checkout). 因此我无法访问主体中的特定元素,尽管它在UI中呈现良好

我怀疑正文中有错误的HTML,因此文档树已损坏

有没有办法处理这个问题,因为它仍然呈现出很好的效果

谢谢

更新
问题是DocumentCompleted事件被触发,但是文档没有被完全解析,所以我只得到了5个元素中的2个

是的,WebBrowser是一种包装式IE,它将尽可能好地处理糟糕的HTML

您不能简单地将内容写入文本文件而不是web浏览器控件,并将其写入HTML文件吗。然后将其加载到浏览器中,并使用您选择的开发工具进行检查。

除了此网站的html代码有超过个(大部分缺少实体)之外,您可以尝试将代码加载到程序内的XmlDocument或XDocument中,并通过XPath访问所需的节点。

如果您需要以编程方式与HTML交互,更具体地说,是与糟糕的HTML交互,我建议您查看一下

这是一个敏捷的HTML解析器 构建读/写DOM并支持 普通XPATH或XSLT(实际上 不必理解XPATH,也不必 XSLT来使用它,不用担心。它是 一个.NET代码库,允许您 解析“网外”HTML文件最新版本 解析器对“real”非常宽容 world“格式不正确的HTML。对象 模型与所提出的非常相似 Xml,但用于HTML文档(或 溪流)