我需要使用
打开网页WebRequest wr = WebRequest.Create(uri);
此网页有一个下载按钮,需要单击该按钮才能将zip文件下载到我的本地目录。我不知道这个下载按钮的URL,如果我将鼠标悬停在它上面,它只显示.aspx地址。
现在我该如何模拟此点击以便下载文件?
答案 0 :(得分:1)
using System;
using System.Windows.Forms;
namespace SampleBrowserautomate
{
public partial class Form1 : Form
{
// first of all, insert web browser control and button control into your form
string target = "https://www.facebook.com/login.php";
public Form1()
{
InitializeComponent();
}
private void btnGo_Click(object sender, EventArgs e)
{
webBrowser1.Navigate(target);
}
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
WebBrowser b = (WebBrowser)sender;
b.Document.GetElementById("email").InnerText = "helloworld@gmail.com";
b.Document.GetElementById("pass").InnerText = "HelloWorld";
b.Document.GetElementById("u_0_1").InvokeMember("click");
}
}
}
msdn上的另一个例子
http://msdn.microsoft.com/en-us/library/System.Windows.Forms.HtmlElement(v=vs.110).aspx http://msdn.microsoft.com/en-us/library/system.windows.forms.htmlelement.setattribute(v=vs.110).aspx
答案 1 :(得分:0)
UI自动化怎么样?这就是你要追求的吗?
http://msdn.microsoft.com/en-us/library/dd286726.aspx
编辑:Web UI自动化怎么样? http://msdn.microsoft.com/en-us/library/hh404082.aspx答案 2 :(得分:0)
所以我正在解决这个问题,但要检查一下。
您可以使用此javascript:
触发该按钮的客户端事件__doPostBack('DownloadButton','OnClick');
这将与chrome控制台中的“javascript:”标头一起使用。现在你可以使用greasemonkey(firefox)或者另外添加chrome来自动执行此操作。