C# 使用HTML功能捕获web浏览器显示的页面HTML源
我想知道在C#应用程序中,在Web浏览器上显示html内容的方法。。我最初使用HTML敏捷包。如果我的知识是真的,我的代码如下C# 使用HTML功能捕获web浏览器显示的页面HTML源,c#,browser,html-agility-pack,C#,Browser,Html Agility Pack,我想知道在C#应用程序中,在Web浏览器上显示html内容的方法。。我最初使用HTML敏捷包。如果我的知识是真的,我的代码如下 htmlWeb hw = new HtmlWeb(); if (txtCurrentURL.Text == "") { MessageBox.Show(" Enter Web Address to Process "); } else { H
htmlWeb hw = new HtmlWeb();
if (txtCurrentURL.Text == "")
{
MessageBox.Show(" Enter Web Address to Process ");
}
else
{
HtmlAgilityPack.HtmlDocument htmlDoc = hw.Load(@txtCurrentURL.Text);
if (htmlDoc.DocumentNode != null)
{
try
{ foreach (HtmlNode text in htmlDoc.DocumentNode.SelectNodes(txtExpression.Text))
{
_items.Add(text.InnerHtml);
richTextResults.Text = text.InnerHtml;
} }
catch
{ MessageBox.Show(" No Usefull Data found");
}
lstBxResult.DataSource = _items;
}
}
及
txtCurrentUR.Text
是我的Web浏览器当前显示的url地址
如果我没有错的话,HTMLAgility的结果是我们通过使用HTMLAgility类连接到所提到的URL而不是通过访问web服务器内容得到的结果,对吗。所以我的问题是,如果页面需要任何登录,或者像收件箱一样只有在登录后才能访问页面,那么用户帐户页面在敏捷性中不会显示错误。但是我们现在在web浏览器中可以很容易地显示这些内容,我想捕获显示在浏览器上的数据,而不是通过连接URl和使用Agility捕获数据。。。但是我不知道怎么做,请帮助我???如果我理解正确,您将要使用的是Cookies集合
private HtmlWeb CreateWebRequestObject()
{
HtmlWeb web = new HtmlWeb();
web.UseCookies = true;
web.PreRequest = new HtmlWeb.PreRequestHandler(PreRequestStuff);
web.PostResponse = new HtmlWeb.PostResponseHandler(AfterResponseStuff);
web.PreHandleDocument = new HtmlWeb.PreHandleDocumentHandler(PreHandleDocumentStuff);
return web;
}