我尝试自动执行与网站表单交互以下载文件的任务。
在人类方面,我从选项列表中选择一个标签,然后按提交按钮。然后,该网站会自动将zip文件下载到下载文件夹中。
上述操作具有在浏览器控制台中运行此代码的最终效果:
$('#ListBox1').val($('#ListBox1 option:first')) && $('#Download_0').click()
我的问题是,如何通过运行C#程序中的代码来下载此zip文件?理想情况下,我也可以指定文件下载的位置,但我不确定这是否可行。
请注意,此问题不是询问如何使用C#下载文件(请参阅:How to download a file from a website in C#和.net - Downloading a file from a website using C#)。网站上没有这样的文件供我下载。生成的文件由上述两个操作自动生成和下载。
编辑:
下面的代码确实下载了一个文件,但是,该文件是24kb(我希望的zip文件大约是8mb)并且无法打开:
using (WebClient client = new WebClient())
{
client.DownloadFile("https://cdr.ffiec.gov/public/PWS/DownloadBulkData.aspx", AppDomain.CurrentDomain.BaseDirectory + "download.zip");
}
EDIT2: 我尝试做的是下载包含批量呼叫报告数据的最新zip文件。该网站自动选择最近可用的数据,但我必须手动选择我要下载的文件类型。因此,网络请求不会是静态的,并且无法硬编码到程序中,这就是我尝试与网页进行交互的原因。