模拟在网站上的点击并在C#中获得响应

时间:2018-09-10 19:06:58

标签: c# asp.net screen-scraping

我需要获取和处理每月在网站上发布的一些文件,这是在网站上设置HTML锚点的方式:

<a id="gv_data_btn_file_6" href="javascript:__doPostBack('gv_data$ctl08$btn_file','')">ListOfAutoCodes2018.zip</a>

单击后,这就是静息:

Cache-Control: no-cache
Pragma: no-cache
Content-Type: application/octet-stream
Expires: -1
Server: Microsoft-IIS/8.5
content-disposition: attachment;filename=ListOfAutoCodes2018.zip
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Mon, 10 Sep 2018 18:37:26 GMT
Content-Length: 495042

您可以共享代码还是建议我如何“模拟” JavaScript函数的单击和/或执行,然后获得响应,在这种情况下,响应是CSV文件插入流中?

1 个答案:

答案 0 :(得分:0)

我从这样的代码中调用了一个C#按钮,从C#代码调用中提交:

// in C# code somewhere
btnSubmit_Click(Submit, null);  // where Submit, references the button on the HTML page

对于在HTML上声明为这样的提交按钮:

<asp:Button ID="Submit" Text="Submit" runat = "server" onClick="btnSubmit_Click" />

因此,如果这是您的应用程序,则可以使用我在上面的逻辑中所做的操作像这样在C#中重新创建调用:

btnSubmit_Click(gv_data_btn_file_6, null);