从网站上检索html

时间:2015-12-14 19:47:03

标签: c# visual-studio html-parsing

这有点棘手,但事实就是如此。

  1. 页面加载
  2. 执行一些生成更多HTML代码的javascript。源代码是我需要的。 现在我看到我不能使用html解析器,因为实际上没有办法运行代码。 使用http我可以管理获取第一个源代码,但javascript没有执行,所以我从来没有得到我需要的源代码。
  3. 检索之后生成的代码的最佳方法是什么?

    编辑:我试图避免使用隐藏的网络浏览器。它实际上是可能的,因为它在这里作为一个JavaScript解释器,但它是非常缓慢和非常丑陋的方式。

    Edit2:添加了代码

    static private string _InetReadEx(string sUrl)
            {
                string aRet;
                HttpWebRequest webReq = (HttpWebRequest)HttpWebRequest.Create(sUrl);
                try
                {
                    webReq.CookieContainer = new CookieContainer();
                    webReq.Method = "GET";
                    using (WebResponse response = webReq.GetResponse())
                    {
                        using (Stream stream = response.GetResponseStream())
                        {
                            StreamReader reader = new StreamReader(stream);
                            aRet = reader.ReadToEnd();
                            return aRet;
                        }
                    }
                }
                catch (Exception ex)
                {
                    return string.Empty;
                }
            }
    

1 个答案:

答案 0 :(得分:0)

除非你按照提到的那样使用 WebBrowser ,否则你要避免。没有其他的召集方式。

您可以模仿运行和执行它的JavaScript的行为,而不是像 WebBrowser 那样对其进行格式化,但这不是动态格式化,因此不太理想。