Программно авторизоваться на сайте - C# (236408)

Узнай цену своей работы

Формулировка задачи:

Такой вопрос - необходимо написать программу, на которой будет поля для ввода логина и пароля и кнопка отправить. Программа должна послать запрос сайту, например yandex.ru, который авторизует меня на этом сайте (логин и пароль заранее известны) и если бы я зашел через браузер, то увидел, что авторизация прошла верно. Возможно ли такое в принципе и в какую сторону мне нужно копать?Если можно, то небольшой кусочек рабочего кода будет очень кстати.

Решение задачи: «Программно авторизоваться на сайте»

textual
Листинг программы
request = (HttpWebRequest)WebRequest.Create("адрес");
            request.Method = "POST";
            request.AllowAutoRedirect = true;
            request.CookieContainer = new CookieContainer();
            request.ContentType = "application/x-www-form-urlencoded";
 
            try
            {
                if (request.CookieContainer.Count == 0)
                {
                    byte[] query = System.Text.Encoding.ASCII.GetBytes(string.Format("login_email={0}&login_password={1}", "login", "pass"));
                    request.ContentLength = query.Length;
 
                    Stream stream = request.GetRequestStream();
                    stream.Write(query, 0, query.Length);
                    stream.Close();
                }
                using (HttpWebResponse resp = (HttpWebResponse)request.GetResponse())
                {
                    resp.Cookies = request.CookieContainer.GetCookies(request.RequestUri);
                    using (Stream st = resp.GetResponseStream())
                    {
                        using (StreamReader read = new StreamReader(st))
                        {
                            return getText(read.ReadToEnd());
                        }
                    }
                }
            }
            catch (Exception)
            {
                return null;
            }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.5 из 5