Программная авторизация на сайте - C#
Формулировка задачи:
Существует сайт необходимо написать программу которая будет автоматически вводить логин и пароль заходить. После необходимо ввести в текстовые поля сайта значения и нажать пару кнопок на сайте. Какой подход нужно использовать и какие классы? Приложение должно быть десктопное.
Решение задачи: «Программная авторизация на сайте»
textual
Листинг программы
private void Button1_Click(object sender, EventArgs e)
{
WebRequest request = WebRequest.Create("http://eaglescraft.ru/auth/auth.php");
request.Method = "POST";
string s = string.Concat(new string[] {
"user=",
this.Login.Text,
"&password=",
this.Pass.Text,
"&version=14"
});
byte[] bytes = Encoding.UTF8.GetBytes(s);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = bytes.Length;
Stream requestStream = request.GetRequestStream;
requestStream.Write(bytes, 0, bytes.Length);
requestStream.Close();
WebResponse response = request.GetResponse;
Console.WriteLine(((HttpWebResponse)response).StatusDescription);
requestStream = response.GetResponseStream;
StreamReader reader = new StreamReader(requestStream);
string str2 = reader.ReadToEnd;
Console.WriteLine(str2);
reader.Close();
requestStream.Close();
response.Close();
if (str2.Contains("bad login")) {
this.inlog.Text = Strings.ChrW(1053) + Strings.ChrW(1077) + Strings.ChrW(1074) + Strings.ChrW(1077) + Strings.ChrW(1088) + Strings.ChrW(1085) + Strings.ChrW(1099) + Strings.ChrW(1081) + " " + Strings.ChrW(1083) + Strings.ChrW(1086) + Strings.ChrW(1075) + Strings.ChrW(1080) + Strings.ChrW(1085) + " " + Strings.ChrW(1080) + Strings.ChrW(1083) + Strings.ChrW(1080) + " " + Strings.ChrW(1087) + Strings.ChrW(1072) + Strings.ChrW(1088) + Strings.ChrW(1086) + Strings.ChrW(1083) + Strings.ChrW(1100);
} else if (str2.Contains("old version")) {
this.inlog.Text = Strings.ChrW(1054) + Strings.ChrW(1073) + Strings.ChrW(1085) + Strings.ChrW(1086) + Strings.ChrW(1074) + Strings.ChrW(1080) + Strings.ChrW(1090) + Strings.ChrW(1077) + " " + Strings.ChrW(1083) + Strings.ChrW(1072) + Strings.ChrW(1091) + Strings.ChrW(1085) + Strings.ChrW(1095) + Strings.ChrW(1077) + Strings.ChrW(1088);
} else {
this.inlog.Text = Strings.ChrW(1042) + Strings.ChrW(1099) + " " + Strings.ChrW(1091) + Strings.ChrW(1089) + Strings.ChrW(1087) + Strings.ChrW(1077) + Strings.ChrW(1096) + Strings.ChrW(1085) + Strings.ChrW(1086) + " " + Strings.ChrW(1074) + Strings.ChrW(1086) + Strings.ChrW(1096) + Strings.ChrW(1083) + Strings.ChrW(1080);
this.Pic1.ImageLocation = ("http://eaglescraft.ru/engine/modules/cabinet/skin2d.php?skinpath=http://eaglescraft.ru/uploads/skins/" + this.Login.Text + ".png");
string[] strArray = Strings.Split(str2, ":", -1, CompareMethod.Binary);
this.gamever = strArray(0);
this.downtick = strArray(1);
this.sesid = strArray(3);
}
}