HttpWebRequest Image 正在延迟加载



所以我正在向特定网站发送一个 httpwebrequest,我需要来自该网站的图像,但此图像在请求完成后 3-5 秒加载,因此源不包含图像,我想进行某种延迟,以便我可以在几秒钟后得到响应, 这是我的代码:

HttpWebRequest req1 = (HttpWebRequest)WebRequest.Create("url");            
            using(var httpResponse = req1.GetResponse())
            {
                using (var ResponseStream = httpResponse.GetResponseStream())
                {
                    if (ResponseStream != null)
                    {
                        using (StreamReader sr = new StreamReader(ResponseStream))
                        {
                            string response = sr.ReadToEnd();                            
                            var doc = new HtmlAgilityPack.HtmlDocument();
                            doc.Load(ResponseStream);
                            foreach(HtmlNode node in doc.DocumentNode.SelectNodes("src"))//it's not working because the source does not contain the image
                            {
                                pictureBox1.ImageLocation = node.ToString();
                            }
                        }
                    }
                }
            }

可能发生的情况是,页面被加载,然后Javascript事件触发,并对服务器进行单独调用以加载图像。延迟您的 HTTP 请求不会帮助您实现您想要的目标。

我会建议

  1. 在谷歌浏览器中打开页面,然后按Ctr-Shift-J调出开发者工具。
  2. 单击网络选项卡。
  3. 单击开发人员工具控件中的"图像"。
  4. 单击网络选项卡。
  5. 导航到包含图像的页面。你将在开发者工具中看到对映像的请求。
  6. 尝试找出该请求在 Javascript 中创建的位置。

如果您提供指向您正在谈论的页面的链接,我或其他人可能会进一步澄清。

相关内容

  • 没有找到相关文章

最新更新