Logowanie do strony z poziomu aplikacji

0

Witam,

piszę program w c#, do porządnego działania aplikacji potrzebuję pobierać dane z jednej strony, stwierdziłem, że rozwiązanie pobrać plik html i wyszukiwanie w nim istotnych dla mnie informacji będzie proste i łatwe i z tym ok:

WebClient webClient = new WebClient();
byte[] reqHTML;
webClient.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");
reqHTML = webClient.DownloadData("http://stronka.pl");
UTF8Encoding objUTF8 = new UTF8Encoding();

i w UTF8Encoding objUTF8 mam stringa zawierającego źródło strony.

Jednak problem następuje taki, że serwer zwraca mi stronę zawierającą treść "Sesja wygasła".
Muszę wpierw z poziomu aplikacji zalogować się na stronę aby pobrać z niej dane.
Nie wiem jak się za to zabrać.

0

Logowanie zwykle polega na wysłaniu formularza z użytkownikiem i hasłem metodą POST. Polecam Live HTTP Headers - wtyczkę do firefoxa, która wyświetli Ci dokładnie jakie żądania idą do serwera. Odtworzenie tych żądań z poziomu programu powinno dać efekt tożsamy z działaniem ręcznym z przeglądarki.

0

Chyba kiedyś miałem podobny problem i na 90% to było coś z CookieContainer (trzeba użyć tej klasy zdaje się).

Sprawdź w google - być może to to.

1 użytkowników online, w tym zalogowanych: 0, gości: 1