ASP.NET对html进行操作和触发操作

时间:2012-02-24 13:24:07

标签: c# asp.net html

我正在开发一个项目,其中一个功能是此页面从其他页面(而不是Web服务)获取数据,然后将其显示在网格上并使用hightcharts进行制图。 问题是我想要阅读的这些数据是在另一页中。 我知道我可以从其他页面读取HTML ...但是为了在页面上获取此信息,我需要填写2个输入文本以获取过滤器并按下提交按钮..然后它显示一个表,这是表格所在的表格我需要提取信息。

有没有办法在c#上自动执行此操作?

1 个答案:

答案 0 :(得分:3)

有很多方法可以做到这一点;最常见的是围绕AJAX。您可以通过Javascript从客户端发起回调到服务器上的方法,例如,可以更新UpdatePanel中的控件。

您还可以向服务器端Page Methods进行客户端调用。实际上,这是您的webform上的静态方法,您可以通过javascript / jquery和AJAX从客户端调用。

EDIT。

事实证明你想要scrape另一个网站。最简单的方法是在您的网站上使用服务器端页面方法执行此操作 - 它从客户端站点请求页面,提取您想要的信息,然后将其返回给您的客户端。您的客户当然可以将其称为页面方法。

有关教程的信息,请参阅http://www.4guysfromrolla.com/webtech/070601-1.shtml,我建议使用该文章中提到的HTML Agility Pack

进一步编辑

您想进一步操纵远程站点上的页面;如果您不能或不想与该网站的开发人员交谈以找到以编程方式进行的方式,那么您将不得不作弊。获取Firebug和Tamper Data。使用Firebug和Tamper Data来查看单击远程站点上的按钮如何发出请求并将其发布到服务器 - 您希望模拟执行相同操作。如果您知道正在发布的数据,那么您可以从服务器发出完全相同的帖子。

trying to scrape AJAX websites时,您经常遇到此类问题。