.NET WebBrowser - FireBug样式检查HTML元素

Joh*_*ohn 14 .net html javascript c# firebug

是否可以使用.NET 3.5/4.0在WinForm Web浏览器中检查HTML元素?

可能使用IHighlightRenderingServices接口或Html Agility Pack?

我希望应用程序像FireBug一样运行:

只需用鼠标悬停要检查的元素,然后单击它.在1.7之前的Firebug版本中,这会自动切换到HTML面板并在节点视图中选择适当的元素.

检查元素

编辑:

哇,我刚刚遇到http://www.selectorgadget.com/,这正是我想要做的.这是在Javascript中,在查看过去2小时的源代码后,我仍然不知道如何将其合并到我的程序中...

据我所知,它使用DOM元素的标记化和递归分析来确定CSS选择器路径:http://www.selectorgadget.com/stable/lib/dom.js.

编辑: 好的!我已经将selectorgadget加载到我的应用程序中.它允许您选择与Firebug完全相同的HTML元素!甚至创建Xpath查询.

在此输入图像描述

但是,我正在使用AxWebBrowser而且我仍然坚持如何使用HtmlAgilityPack ...

    private void xpathQuery_Click(object sender, EventArgs e)
    {
        // Load Browser 
        HtmlWindow window = axWebBrowser1.Document.Window; // <---- 'object' does not contain a definition for 'Window'

        string str = window.Document.Body.OuterHtml;

        // Load HTML
        HtmlAgilityPack.HtmlDocument HtmlDoc = new HtmlAgilityPack.HtmlDocument();
        HtmlDoc.LoadHtml(str);

        //Process Xpath Query 
        HtmlAgilityPack.HtmlNodeCollection Nodes = HtmlDoc.DocumentNode.SelectNodes(xpathText.Text);

        //Print in Text box 
        foreach (HtmlAgilityPack.HtmlNode Node in Nodes)
        {
            richTextBox1.Text += Node.OuterHtml + "\r\n";
        }         
    }
Run Code Online (Sandbox Code Playgroud)

编辑: 我无法让AxWebBrowser使用HtmlAgilityPack,所以我只是使用WebClient类加载URL,然后用HtmlAgilityPack解析它.

我刚刚完成了Web Scraper.它的功能类似于Visual Web Ripper和其他价值1000美元以上的其他产品.

在此输入图像描述

Mas*_*low 1

萤火虫精简版怎么样?

http://getfirebug.com/firebuglite

它是一个书签,可以将大多数 Firebug 功能注入到任何东西中。