代码之家  ›  专栏  ›  技术社区  ›  Even Mien

用.NET在SSL上进行屏幕抓取

  •  9
  • Even Mien  · 技术社区  · 15 年前

    有什么解决方案可以通过SSL对网站进行屏幕抓取,以便与.NET一起使用?

    我的用例是,我需要登录到一个合作伙伴网站(https),浏览一个动态的层次结构,并下载一个压缩的报告文件。

    如果.NET中没有好的可行选项,我当然可以使用其他的屏幕抓取程序,不管是框架还是OSS。

    4 回复  |  直到 15 年前
        1
  •  6
  •   Jeff Moser    15 年前

    也许考虑一下 WATIN 模拟导航或 WebClient 如果你能自己找到项目并模拟逻辑。

        2
  •  8
  •   Colin Pickard    15 年前

    在.NET中,屏幕刮擦的金标准是 HTML Agility Pack .

    至于通过https检索页面,请尝试以下文章:

    (如其他答案所述,您可能在 自动化 而不是 筛网刮削 在这种情况下,你最好 WatiN ,一个原本为自动化Web测试而设计的框架,但足够灵活以满足您的需要)

        3
  •  4
  •   ConsultUtah    15 年前

    您当然可以使用httpwebrequest执行此操作,但是跟踪用于登录的cookie可能是非常重要的。我建议使用 watir (红宝石)或 watin (C)。他们都会为你处理所有这些。

    从Watin网站上,这里有一个例子:

    public void SearchForWatiNOnGoogle()
    {
     using (IE ie = new IE("http://www.google.com"))
     {
      ie.TextField(Find.ByName("q")).TypeText("WatiN");
      ie.Button(Find.ByName("btnG")).Click();
    
      Assert.IsTrue(ie.ContainsText("WatiN"));
     }
    }
    
        4
  •  2
  •   Lance Fisher    15 年前

    我听说有人在他们的程序中托管浏览器,并使用jquery进行抓取。我觉得很好,因为jquery非常适合搜索dom。