Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Can';下载html网页源码_C#_Webclient_Web Scraping - Fatal编程技术网

C# Can';下载html网页源码

C# Can';下载html网页源码,c#,webclient,web-scraping,C#,Webclient,Web Scraping,我正在尝试下载html源代码,但我得到“基础连接已关闭:连接意外关闭。”异常。 我尝试了不同的url,效果很好 此处参考所使用的编程语言会有所帮助。 你确定@in using (var client = new WebClient()) { client.DownloadFile(new Uri(@"http://www.bilyoner.com/iddaa/iddaa-liste"),path); } } 正确吗? 对于开发期间的

我正在尝试下载html源代码,但我得到“基础连接已关闭:连接意外关闭。”异常。
我尝试了不同的url,效果很好

此处参考所使用的编程语言会有所帮助。
你确定@in

using (var client = new WebClient())
        {
          client.DownloadFile(new Uri(@"http://www.bilyoner.com/iddaa/iddaa-liste"),path);

        }
    }
正确吗?
对于开发期间的调试,创建对所有连接的引用总是很有用的。即

new Uri(@"http://www.bilyoner.com/iddaa/iddaa-liste")

接受压缩流就可以做到这一点

myConnection =  new Uri(@"http://www.bilyoner.com/iddaa/iddaa-liste");
client.DownloadFile(myConnection, path);

也许服务器只允许标准浏览器访问其内容。设置标准浏览器的用户代理可能会起作用。@只会使其成为文字字符串(您的字符串可以是多行的,您不需要再转义特殊字符)。但在这个例子中,它是不必要的。不过没错:)谢谢你的否决票。尽管我怀疑使用我提供的代码会对OP有所帮助,因为它可能会在不同的线路上失败——例如,如果按照“nunespascal”和“L.B”的建议,可能是用户代理或压缩问题。我没有投反对票。当我发表评论时,您处于0。我同意使用额外的变量进行调试。我确实倾向于在确认代码正确后删除它们。我知道这是个人偏好的问题,我通常会保留它们,因为(从我的角度来看)它们使代码更可读(和可调试),并且不会带来任何开销-这些对象无论如何都是创建的,只是添加了一个本地对象(范围适当)代码中的引用不会改变任何东西。(顺便说一句:谢谢你的否决票,我不是指你)嗯,我明白你的意思。这完全取决于您最终需要维护代码的程度。我倾向于创建库供以后使用,然后我确实倾向于清理类似的东西,因为可读性并不比轻微的性能提升更受欢迎。这只是一个小小的性能提升,但如果您将其转换100次,它将变得非常重要。您是说服务器以压缩格式提供文件,并且
WebClient()。DownloadFile()
不处理压缩格式吗?
HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("http://www.bilyoner.com/iddaa/iddaa-liste");
req.UserAgent = "MOZILLA/5.0 (WINDOWS NT 6.1; WOW64) APPLEWEBKIT/537.1 (KHTML, LIKE GECKO) CHROME/21.0.1180.75 SAFARI/537.1";
req.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
req.Headers.Add("Accept-Encoding", "gzip,deflate");

GZipStream zip = new GZipStream(req.GetResponse().GetResponseStream(),
                                                      CompressionMode.Decompress);
var reader = new StreamReader(zip);
var page = reader.ReadToEnd();