PDA

View Full Version : حرفه ای: ساختن یک روبات اینترنتی



sajadam22
سه شنبه 10 شهریور 1394, 11:00 صبح
سلام.دوستان من دارم یک روبات میسازم خب؟؟
میخوام وارد یه سایت بشه خب؟؟به فرض اسم سایت اینه:goooya.com
خب این سایت(goooya.com/login) یه قسمت داره دو تا تکست باکس واسه یوزر و پسورد داره و یه دکمه برای لوگین..
من همین کارو تو روباتم کردم..
حالا تو کد نویسی باید چیکار کنم که یوزر و پسوردو که وارد و رو دکمه کلیک کردم وارد اون سایت بشه؟؟
لطفا زود جواب بدید...:متفکر::متفکر::متفکر:

Roia_del
سه شنبه 10 شهریور 1394, 12:07 عصر
از این استفاده کن :


string param = "username=MyUserName&password=123456";
string url = "https://lms.nust.edu.pk/portal/login/index.php";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "POST";
request.ContentLength = param.Length;
request.ContentType = "application/x-www-form-urlencoded";
request.CookieContainer = new CookieContainer();

using (Stream stream = request.GetRequestStream())
{
byte[] paramAsBytes = Encoding.Default.GetBytes(param);
stream.Write(paramAsBytes, 0, paramAsBytes.Count());
}

using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
foreach (var cookie in response.Cookies)
{
var properties = cookie.GetType()
.GetProperties()
.Select(p => new
{
Name = p.Name,
Value = p.GetValue(cookie)
});

foreach (var property in properties)
{
Console.WriteLine ("{0}: {1}", property.Name, property.Value);
}
}
}


به سایت با پارامترهای داده شده لاگین میشه و کوکی مربوطه رو برمیگردونه.

sajadam22
سه شنبه 10 شهریور 1394, 14:54 عصر
دوست گلم توضیح بده بفهمم اینا چین..

alnajon
سه شنبه 10 شهریور 1394, 22:51 عصر
برای پر کردن کادر ها : web1.Document.GetElementById("name cadr morde nazaer").InnerText = textbox1.Text; برای کلیک روی دکمه : string value = "ارسال"; foreach (HtmlElement input in web1.Document.GetElementsByTagName("input")) if (input.GetAttribute("value") == value) input.InvokeMember("click");

Roia_del
شنبه 14 شهریور 1394, 08:35 صبح
دوست عزیز آدرس ورود شما : https://jomlak.com/api/users/login میباشد.

پس لازمه شما دوخط زیر رو

string param = "username=MyUserName&password=123456";
string url = "https://lms.nust.edu.pk/portal/login/index.php";





را به خطوط زیر تغییر دهید


string param = "email=MyUserName&password=123456";

string url = "https://jomlak.com/api/users/login";





در مورد کدها هم یه درخواست با پارامترهای مورد نیاز به شکل POST به آدرس لاگین سایت باز میکنه، و پارامترها که همون نام کاربری و رمز عبور هست رو براش میفرسته .
منتظر نتیجه میمونه و از نتیجه کوکی های نتیجه مربوط به اون سایت که شما لاگین کردی رو برمیگردونه، حالا شما میتونی این کوکی ها رو هرجا خواستی استفاده کنی.(این کوکی ها رو داشته باشی میتونی به صفحات دیگر سایت هم دسترسی داشته باشی )