2009-06-04 65 views
8

通过SSL使用.NET屏幕抓取站点有什么解决方案?使用.NET通过SSL抓取屏幕

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

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

回答

6

也许考虑WATIN模拟导航或WebClient如果你可以自己找到物品并模拟逻辑。

+0

WatiN非常棒。如果我不得不手动解析所有的HTML元素,我会自己开枪。 – 2009-06-10 18:09:36

8

.NET中屏幕抓取的黄金标准是HTML Agility Pack

据检索页面通过HTTPS,请尝试以下文章:

(正如其他的答案中提到,你实际上可能是后自动化而不是屏幕抓取 ,在这种情况下,您可能更适合使用WatiN,这是一个专门用于自动化Web测试的框架,但足够灵活用于您想要的内容)

4

你当然可以用HttpWebRequest做到这一点,但跟踪用于登录的cookie可能并不重要。我会推荐使用watir(ruby)或watin(c#)。两者都会为你处理所有这些。

从华廷的网站,这里有一个例子:

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")); 
} 
} 
2

我听说托管在其程序中的浏览器,并使用jQuery刮的人。由于jQuery非常适合搜索DOM,因此对我来说看起来很棒。