从受ddos保护的网站

时间:2016-06-17 19:26:57

标签: c# html

我试图下载页面的HTML-String,其中包含DDOS-denier版本:在第一次访问该页面时,您必须等待5秒才能重定向。 URL本身并没有改变,似乎只是在这个URL中构建。 既然我不想要ddos,我可以等待5秒钟,但我无法让它在之后获得HTML。 我的尝试现在看起来像这样(有一些测试的东西):

    private async Task<string> GetRawHtmlAsync(HttpClientHandler handler, string threadUrl)
    {
        try
        {
            HttpResponseMessage resp = null;
            var client = new HttpClient(handler);

            resp = await client.GetAsync(threadUrl);
            var result = await resp.Content.ReadAsStringAsync();
            if (result.Contains("This process is automatic. Your browser will redirect to your requested content shortly."))
            {
                return await GetRawHtmlAsync(handler, threadUrl);
            }

            return result;
        }
        catch (WebException ex)
        {
            using (var sr = new StreamReader(ex.Response.GetResponseStream()))
            {
                var tra = ex.Response.ResponseUri;
                var tra2 = ex.Response.Headers.Get("Location");

                var html = sr.ReadToEnd();
                Debug.Write(html);
            }
        }

        return null;
    }

HttpClientHandler是通过Factory创建的:

    internal HttpClientHandler Create()
    {
        var handler = new HttpClientHandler()
        {
            AllowAutoRedirect = true,
            CookieContainer = new CookieContainer()
        };

        return handler;
    }

正如你所看到的,我试图修改Cookie,如下所述:HttpClient Not Saving Cookies。我也尝试过这种方法:http://blog.project-sierra.de/archives/2132但是既然没有重定向网址,这也不行。

是否有可能等待5秒钟出来?

编辑:窗口看起来像这样,不确定这是否有帮助: enter image description here

0 个答案:

没有答案