2009-06-04 28 views
8

.NET ile kullanım için SSL üzerinden bir sitenin ekran kazıması için hangi çözümler var?.NET üzerinden ekran kazıması .NET

Kullanım durumu, bir iş ortağı web sitesine (https) giriş yapmam, dinamik bir hiyerarşiden geçmem ve raporların sıkıştırılmış bir dosyasını indirmem gerekmesi.

Çerçeve veya OSS'de olsa, .NET'te iyi bir seçenek yoksa, diğer ekran kazıyıcılarını da kullanabilirim.

cevap

6

Gezinmeyi simüle etmek veya WebClient öğelerini kendiniz bulmak ve mantığı simüle etmek için WATIN10'u düşünebilirsiniz.

+0

WatiN harika çalıştı. Tüm HTML öğelerini el ile ayrıştırmam gerekirse kendimi vurabilirdim. –

8

.NET'te ekran kazıması için altın standart HTML Agility Pack'dur.

Bildiğim kadarıyla HTTPS üzerinden sayfalarını almaya, bu yazıyı çalışırken:

(otomasyon yerine sonra ekran kazıma diğer cevaplar ile belirtildiği gibi, aslında edilebilir Bu durumda, WatiN, otomatik web testi için orjinal olarak tasarlanmış bir çerçeve ile daha iyi olabilirsiniz, ancak istediğiniz kadar yeterince esnek olabilirsiniz.

4

Bunu kesinlikle HttpWebRequest ile yapabilirsiniz, ancak oturum açmak için kullanılan çerezleri takip etmek önemsiz olabilir. watir (ruby) veya watin (C#) kullanmanızı öneririm. Her ikisi de senin için hepsini halledecek. Onların programında tarayıcıyı barındıran ve jQuery ile kazıma insanların duydum

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

: watin web sitesinden

, burada bir örnektir. JQuery DOM'ı aramak için harika olduğu için bana harika görünüyor.