2011-03-06 15 views
13

Escribo un scraper en C# y me gustaría descargar algunos datos en archivos y enviar algunos formularios. He estado usando wget y curl hasta ahora por eso. ¿Cómo haría eso en C# (en Linux)? (Me refiero a una biblioteca para eso, sin llamar comandos de shell a través de system() o lo que sea).wget/curl en C#

Respuesta

24

Puede usar System.Net.WebClient, que es la interfaz más simple para descargar recursos en .NET. Si necesita más control sobre las solicitudes, mire HttpWebRequest.

Para WebClient, simplemente se crea una instancia, y llamar a uno de los métodos de descargas que se adapte a sus necesidades:

var cli = new WebClient(); 
string data = cli.DownloadString("http://www.stackoverflow.com"); 
2

WebRequest es una de las clases de .NET para recuperar contenido web.

Una buena biblioteca para analizar el HTML es HTML Agility Pack que también puede descargar directamente la página.