0

我正在写一个网络爬虫,从网站上下载内容。

遍历网站/URL,会触发临时 URL 的创建。这个新 URL 有一个压缩文本文件。必须下载并解析此压缩文件。

我在 C# 中使用及其函数编写了一个刮板。从捕获事件的指定位置读取压缩文件。WebClientDownloadFileAsync()DownloadFileCompleted

我的问题是触发了Windows打开/保存对话框。这需要用户输入并且自动化被中断。

你能建议一种绕过这个问题的方法吗?我很喜欢使用任何备用库重写代码。:)

谢谢阅读

4

1 回答 1

0

您可以使用“HttpWebRequest”执行请求并将流式传输的字节保存到磁盘。

var request = WebRequest.Create(@"your url here");
request.Method=WebRequestMethods.Http.Get;
var response = request.GetResponse();
using (var writeStream = new FileStream(@"path", FileMode.Create))
{
    using (var readStream = response.GetResponseStream())
    {
        var buffer = new byte[1024];
        var readCount = readStream.Read(buffer,0,buffer.Length);
        while (readCount > 0)
        {
            writeStream.Write(buffer,0,buffer.Length);
            readCount= readStream.Read(buffer,0,buffer.Length);
        }
    }
}
于 2012-09-12T14:43:18.543 回答