Je l'ai fait l'autre jour, en résumé, vous devez créer un HttpWebRequest et HttpWepResponse pour soumettre/recevoir des données. Étant donné que vous devez gérer les cookies sur plusieurs demandes, vous devez créer un conteneur de cookies pour contenir vos cookies. Vous pouvez définir les propriétés d'en-tête sur demande/réponse en cas de besoin et ....
Concept de base:
Using System.Net;
// Create Cookie Container (Place to store cookies during multiple requests)
CookieContainer cookies = new CookieContainer();
// Request Page
HttpWebRequest req = (HttpWebRequest)WebRequest.Create("https://www.amazon.com");
req.CookieContainer = cookies;
// Response Output (Could be page, PDF, csv, etc...)
HttpWebResponse resp= (HttpWebResponse)req.GetResponse();
// Add Response Cookies to Cookie Container
// I only had to do this for the first "login" request
cookies.Add(resp.Cookies);
La clé de ceci est déterminer la capture du trafic de la demande réelle. Je l'ai fait en utilisant Fiddler et au cours de quelques captures (près de 10), j'ai compris ce que je devais faire pour reproduire le login sur un site où j'avais besoin de générer des rapports basés sur différents critères de sélection , etc ..) et télécharger les résultats dans des fichiers CSV. Cela fonctionne parfaitement, mais Fiddler était la clé pour le comprendre.
http://www.fiddler2.com/fiddler2/
Bonne chance.
Zach
Fiddler est génial, il y a quelques getchas avec HTTPS cependant. Solution ici: http://clipperhouse.com/blog/post/WebClient-Fiddler-and-SSL.aspx –