Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 10 của 10
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    Hỏi về vấn đề HTTP POST Login website qua C# Winform

    Em đang làm một ứng dụng C# đăng nhập vào website http://tuyendung.com.vn/ để lấy được dữ liệu trên trang đấy mà không biết làm thế nào để đăng nhập được.
    Em làm thế này mà không đăng nhập được các bác ạ. Giúp em với
    Mã:
     string responseStream="";
                string urlLogin = "http://tuyendung.com.vn/tuyendung/Login.aspx";
                CookieContainer cookContainer = new CookieContainer();
                try
                {
                    HttpWebRequest wReq = (HttpWebRequest)WebRequest.Create(urlLogin);
                    wReq.UserAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17";
                    wReq.CookieContainer = cookContainer;
    
                    HttpWebResponse wRes = (HttpWebResponse)wReq.GetResponse();
                    cookContainer.Add(wRes.Cookies);
                    StreamReader reader = new StreamReader(wRes.GetResponseStream());
                    responseStream = reader.ReadToEnd();
                    reader.Close();
                    wRes.Close();
                   
                    if (responseStream.Length > 0)
                    {
                        string value = "ctl00_ContentPlaceHolder1_txtEmail=dinhkhanh@gmail.com" + "ctl00_ContentPlaceHolder1_txtPassword=password";
    
                        HttpWebRequest wReqLogin = (HttpWebRequest)WebRequest.Create("http://tuyendung.com.vn/tuyendung/Login.aspx");
    
                        wReqLogin.UserAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17";
                        wReqLogin.Method = "POST";
                        wReqLogin.ContentType = "application/x-www-form-urlencoded";
                        wReqLogin.CookieContainer = cookContainer;
                        wReqLogin.AllowAutoRedirect = true;//bỏ qua response trước khi redirect
                        wReqLogin.ContentLength = value.Length;
    
                        using (StreamWriter writer = new StreamWriter(wReqLogin.GetRequestStream(), Encoding.ASCII))
                        {
                            writer.Write(value);
                        }
    
                        HttpWebResponse wResLogin = (HttpWebResponse)wReqLogin.GetResponse();
                        reader = new StreamReader(wResLogin.GetResponseStream());
                        responseStream = reader.ReadToEnd();
                        reader.Close();
                        wResLogin.Close();
                    }
                }
                catch { }

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Bạn bắt ngoại lệ mà không làm gì thì lúc có ngoại lệ sao mà biết.

    Bạn nhầm lẫn khi dùng thuộc tính id của thẻ input nhé. Lúc gửi dữ liệu thì nó dùng thuộc tính name. Cụ thể 2 giá trị đúng là:
    Mã:
    ctl00$ContentPlaceHolder1$txtEmail
    ctl00$ContentPlaceHolder1$txtPassword
    dấu đô-la ($) chứ không phải gạch dưới (_)

    Đồng thời trong form này có nhiều trường ẩn do ASP.NET tự tạo ra. Đầy đủ là:
    Mã:
    ctl00$ScriptManager1:ctl00$ContentPlaceHolder1$UpdatePanel1|ctl00$ContentPlaceHolder1$btnLogin
    ctl00$ContentPlaceHolder1$txtEmail:<Địa chỉ thư điện tử>
    ctl00$ContentPlaceHolder1$ValidatorCalloutExtender1_ClientState:
    ctl00$ContentPlaceHolder1$ValidatorCalloutExtender2_ClientState:
    ctl00$ContentPlaceHolder1$txtPassword:<Mật khẩu>
    ctl00$ContentPlaceHolder1$ValidatorCalloutExtender3_ClientState:INVALID
    ctl00$ContentPlaceHolder1$ValidatorCalloutExtender6_ClientState:
    __EVENTTARGET:
    __EVENTARGUMENT:
    __VIEWSTATE:/wEPDwUKMTg0MTQ3NjI5Mg9kFgJmD2QWAgIDD2QWBgIDD2QWDAIFDw8WAh4ISW1hZ2VVcmwFE34vSW1hZ2VzL2xhbmdlbi5wbmdkZAINDxYCHgtfIUl0ZW1Db3VudAIGFgxmD2QWAmYPFQMKbm8tY3VycmVudBcvdHV5ZW5kdW5nL0RlZmF1bHQuYXNweAtUcmFuZyBjaOG7p2QCAQ9kFgJmDxUDCm5vLWN1cnJlbnQWL3R1eWVuZHVuZy9zZWFyY2guYXNweA1Uw6xtIGjhu5Mgc8ahZAICD2QWAmYPFQMKbm8tY3VycmVudBcvdHV5ZW5kdW5nL3Bvc3Rqb2IuYXNweBXEkMSDbmcgdHV54buDbiBk4bulbmdkAgMPZBYCZg8VAwpuby1jdXJyZW50Ky90dXllbmR1bmcvam9icmVzcG9uc2VzLmFzcHg/dHlwZT12aWV3X2xpc3QTUXXhuqNuIGzDvSBo4buTIHPGoWQCBA9kFgJmDxUDCm5vLWN1cnJlbnQaL3R1eWVuZHVuZy9qb2JtYW5hZ2VyLmFzcHgZUXXhuqNuIGzDvSB0dXnhu4NuIGThu6VuZ2QCBQ9kFgJmDxUDB2N1cnJlbnQZL3R1eWVuZHVuZy9teWFjY291bnQuYXNweAxUw6BpIGtob+G6o25kAg8PDxYEHgRUZXh0BQ3EkMSDbmcgbmjhuq1wHgtOYXZpZ2F0ZVVybAU6fi90dXllbmR1bmcvbG9naW4uYXNweD9SZXR1cm5Vcmw9JTJmdHV5ZW5kdW5nJTJmTG9naW4uYXNweGRkAhEPDxYCHgdWaXNpYmxlaGRkAhMPDxYEHwIFCsSQxINuZyBrw70fAwUNcmVnaXN0ZXIuYXNweGRkAhkQPCsADQIADxYCHgtfIURhdGFCb3VuZGdkDBQrAAoFIzA6MCwwOjEsMDoyLDA6MywwOjQsMDo1LDA6NiwwOjcsMDo4FCsAAhYQHwIFGUPhuq1wIG5o4bqtdCB0w6BpIGtob+G6o24eBVZhbHVlBRlD4bqtcCBuaOG6rXQgdMOgaSBraG/huqNuHwMFJC90dXllbmR1bmcvcmVnaXN0ZXIuYXNweD90eXBlPXVwZGF0ZR4HVG9vbFRpcAUZQ+G6rXAgTmjhuq10IFTDoGkgS2hv4bqjbh4HRW5hYmxlZGceClNlbGVjdGFibGVnHghEYXRhUGF0aAUkL3R1eWVuZHVuZy9yZWdpc3Rlci5hc3B4P3R5cGU9dXBkYXRlHglEYXRhQm91bmRnZBQrAAIWDB8CBQF8HwYFAXwfCGcfCWgfCgUkNTgzMDgyNTAtN2ViNi00NTIwLTg5OGMtYjVkY2EzNzQ4NDU1HwtnZBQrAAIWEB8CBRNUaMO0bmcgdGluIGPDtG5nIHR5HwYFE1Row7RuZyB0aW4gY8O0bmcgdHkfAwUXL3R1eWVuZHVuZy9wcm9maWxlLmFzcHgfBwUTVGjDtG5nIFRpbiBDw7RuZyBUeR8IZx8JZx8KBRcvdHV5ZW5kdW5nL3Byb2ZpbGUuYXNweB8LZ2QUKwACFgwfAgUBfB8GBQF8HwhnHwloHwoFJDA2ZmQyZDQwLWY2MWQtNDQzNi1hODllLTg5N2ZmMDE0YTEzMx8LZ2QUKwACFhAfAgUNTG9nbyBjw7RuZyB0eR8GBQ1Mb2dvIGPDtG5nIHR5HwMFFC90dXllbmR1bmcvbG9nby5hc3B4HwcFEUPhuq1wIG5o4bqtdCBMb2dvHwhnHwlnHwoFFC90dXllbmR1bmcvbG9nby5hc3B4HwtnZBQrAAIWDB8CBQF8HwYFAXwfCGcfCWgfCgUkMTI1MGQyY2UtNTNhYS00ZTYyLWFjMDQtNDcwZmM0YzUwYzkyHwtnZBQrAAIWEB8CBRPEkOG7lWkgbeG6rXQga2jhuql1HwYFE8SQ4buVaSBt4bqtdCBraOG6qXUfAwUeL3R1eWVuZHVuZy9jaGFuZ2VwYXNzd29yZC5hc3B4HwcFE8SQ4buVaSBN4bqtdCBLaOG6qXUfCGcfCWcfCgUeL3R1eWVuZHVuZy9jaGFuZ2VwYXNzd29yZC5hc3B4HwtnZBQrAAIWDB8CBQF8HwYFAXwfCGcfCWgfCgUkNjA5YmVjZGEtZWZmZC00ZTI2LTk2MDgtNWY4ZmE3ODg3ZmI3HwtnZBQrAAIWEB8CBRvEkOG7lWkgZS1tYWlsIMSRxINuZyBuaOG6rXAfBgUbxJDhu5VpIGUtbWFpbCDEkcSDbmcgbmjhuq1wHwMFGy90dXllbmR1bmcvY2hhbmdlZW1haWwuYXNweB8HBRfEkOG7lWkgRW1haWwgVHJ1eSBD4bqtcB8IZx8JZx8KBRsvdHV5ZW5kdW5nL2NoYW5nZWVtYWlsLmFzcHgfC2dkZGQCBQ9kFgICAg9kFgJmD2QWBAIBDw8WAh8CBVU8Zm9udCBjb2xvcj1yZWQ+RW1haWwgxJHEg25nIG5o4bqtcCBraMO0bmcgxJHDum5nLCB2dWkgbMOybmcga2nhu4NtIHRyYSBs4bqhaS48L2ZvbnQ+ZGQCBw8PZBYCHglvbmtleWRvd24FvQFpZiAoKGV2ZW50LndoaWNoICYmIGV2ZW50LndoaWNoID09IDEzKSB8fCAoZXZlbnQua2V5Q29kZSAmJiBldmVudC5rZXlDb2RlID09IDEzKSkge2RvY3VtZW50LmZvcm1zWzBdLmVsZW1lbnRzWydjdGwwMCRDb250ZW50UGxhY2VIb2xkZXIxJGJ0bkxvZ2luJ10uY2xpY2soKTtyZXR1cm4gZmFsc2U7fSBlbHNlIHJldHVybiB0cnVlOyBkAgcPZBYCAgIQPCsADQIADxYCHwVnZAwUKwAMBSwwOjAsMDoxLDA6MiwwOjMsMDo0LDA6NSwwOjYsMDo3LDA6OCwwOjksMDoxMBQrAAIWEB8CBRdHaeG7m2kgdGhp4buHdSB24buBIE5JQx8GBRdHaeG7m2kgdGhp4buHdSB24buBIE5JQx8DBRcvdHV5ZW5kdW5nL2Fib3V0dXMuYXNweB8HBQ5HaeG7m2kgVGhp4buHdR8IZx8JZx8KBRcvdHV5ZW5kdW5nL2Fib3V0dXMuYXNweB8LZ2QUKwACFgwfAgUBfB8GBQF8HwhnHwloHwoFJDBmNGY0Y2Y5LTRmYjgtNDFkYS05MjI4LTAzZjI5N2RkYzNiZh8LZ2QUKwACFhAfAgUdSMaw4bubbmcgZOG6q24gdHV54buDbiBk4bulbmcfBgUdSMaw4bubbmcgZOG6q24gdHV54buDbiBk4bulbmcfAwUTL3R1eWVuZHVuZy9mYXEuYXNweB8HBQtUcuG7oyBHacO6cB8IZx8JZx8KBRMvdHV5ZW5kdW5nL2ZhcS5hc3B4HwtnZBQrAAIWDB8CBQF8HwYFAXwfCGcfCWgfCgUkZjk1NGQzZGEtNzAyYy00NmMzLWI5ODYtNDk0MTc4N2FkMGFjHwtnZBQrAAIWEB8CBQpMacOqbiBo4buHHwYFCkxpw6puIGjhu4cfAwUZL3R1eWVuZHVuZy9jb250YWN0dXMuYXNweB8HBQpMacOqbiBI4buHHwhnHwlnHwoFGS90dXllbmR1bmcvY29udGFjdHVzLmFzcHgfC2dkFCsAAhYMHwIFAXwfBgUBfB8IZx8JaB8KBSQyMzY4ZjllNy1hODZlLTQ5NWQtYWM3MC0wYjJhMDMxNTkyMjIfC2dkFCsAAhYQHwIFGUThu4tjaCB24bulICYgQuG6o25nIGdpw6EfBgUZROG7i2NoIHbhu6UgJiBC4bqjbmcgZ2nDoR8DBRgvdHV5ZW5kdW5nL3NlcnZpY2VzLmFzcHgfBwUZROG7i2NoIHbhu6UgJiBC4bqjbmcgZ2nDoR8IZx8JZx8KBRgvdHV5ZW5kdW5nL3NlcnZpY2VzLmFzcHgfC2dkFCsAAhYMHwIFAXwfBgUBfB8IZx8JaB8KBSQ4OGQ1ZmNiZi05ZmE4LTQ3ZWItYmU0MS1mNzhhNmJiYWFjYTAfC2dkFCsAAhYQHwIFGlRo4buPYSB0aHXhuq1uIHPhu60gZOG7pW5nHwYFGlRo4buPYSB0aHXhuq1uIHPhu60gZOG7pW5nHwMFFS90dXllbmR1bmcvdGVybXMuYXNweB8HBRpUaOG7j2EgVGh14bqtbiBT4butIEThu6VuZx8IZx8JZx8KBRUvdHV5ZW5kdW5nL3Rlcm1zLmFzcHgfC2dkFCsAAhYMHwIFAXwfBgUBfB8IZx8JaB8KBSRjOTM1ZDE1ZC05MzJlLTQ4ZjUtODY4OS1hOTk3YThmNTMwOGMfC2dkFCsAAhYQHwIFGFF1eSDEkeG7i25oICBi4bqjbyBt4bqtdB8GBRhRdXkgxJHhu4tuaCAgYuG6o28gbeG6rXQfAwUWL3R1eWVuZHVuZy9wb2xpY3kuYXNweB8HBRdRdXkgxJDhu4tuaCBC4bqjbyBN4bqtdB8IZx8JZx8KBRYvdHV5ZW5kdW5nL3BvbGljeS5hc3B4HwtnZGRkGAEFHl9fQ29udHJvbHNSZXF1aXJlUG9zdEJhY2tLZXlfXxYCBRhjdGwwMCRIZWFkZXIxJExhbmdCdXR0b24FL2N0bDAwJENvbnRlbnRQbGFjZUhvbGRlcjEkQ2hlY2tCb3hSZW1lbWJlckVtYWlsbfjJuCorKKzhb4k1egxgSyObU4I=
    __EVENTVALIDATION:/wEWCwLG/PGZDQLUnp3xAQK1tankAgLwi5HgCgL90KKTCAK/toC/AwKE2KHdBgKO9e+RAQK87PLABgLhlITBAwKb34OuCAdyn53MdRykAke99KpQvVF0lFhi
    __AjaxControlToolkitCalendarCssLoaded:
    __LASTFOCUS:
    __ASYNCPOST:true
    ctl00$ContentPlaceHolder1$btnLogin:Đăng nhập
    Mình không chắc là các giá trị này có ảnh hưởng gì quan trọng không nữa.

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi SITUVNX
    Bạn bắt ngoại lệ mà không làm gì thì lúc có ngoại lệ sao mà biết.

    Bạn nhầm lẫn khi dùng thuộc tính id của thẻ input nhé. Lúc gửi dữ liệu thì nó dùng thuộc tính name. Cụ thể 2 giá trị đúng là:
    Mã:
    ctl00$ContentPlaceHolder1$txtEmail
    ctl00$ContentPlaceHolder1$txtPassword
    dấu đô-la ($) chứ không phải gạch dưới (_)

    Đồng thời trong form này có nhiều trường ẩn do ASP.NET tự tạo ra. Đầy đủ là:
    Mã:
    ctl00$ScriptManager1:ctl00$ContentPlaceHolder1$UpdatePanel1|ctl00$ContentPlaceHolder1$btnLogin
    ctl00$ContentPlaceHolder1$txtEmail:<Địa chỉ thư điện tử>
    ctl00$ContentPlaceHolder1$ValidatorCalloutExtender1_ClientState:
    ctl00$ContentPlaceHolder1$ValidatorCalloutExtender2_ClientState:
    ctl00$ContentPlaceHolder1$txtPassword:<Mật khẩu>
    ctl00$ContentPlaceHolder1$ValidatorCalloutExtender3_ClientState:INVALID
    ctl00$ContentPlaceHolder1$ValidatorCalloutExtender6_ClientState:
    __EVENTTARGET:
    __EVENTARGUMENT:
    __VIEWSTATE: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
    __EVENTVALIDATION:/wEWCwLG/PGZDQLUnp3xAQK1tankAgLwi5HgCgL90KKTCAK/toC/AwKE2KHdBgKO9e+RAQK87PLABgLhlITBAwKb34OuCAdyn53MdRykAke99KpQvVF0lFhi
    __AjaxControlToolkitCalendarCssLoaded:
    __LASTFOCUS:
    __ASYNCPOST:true
    ctl00$ContentPlaceHolder1$btnLogin:Đăng nhập
    Mình không chắc là các giá trị này có ảnh hưởng gì quan trọng không nữa.
    Em cám ơn bác nhưng vẫn không dùng được bác ơi

    - - - Nội dung đã được cập nhật ngày 12-07-2014 lúc 10:58 AM - - -

    Mã:
    string responseStream = "";
                string responseStreamInfor = "";
                string urlLink = "http://ungvien.com.vn/employer/main.php";
                CookieContainer cookContainer = new CookieContainer();
                try
                {
                    HttpWebRequest wReq = (HttpWebRequest)WebRequest.Create(urlLink);
                    wReq.UserAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17";
                    wReq.CookieContainer = cookContainer;
    
                    HttpWebResponse wRes = (HttpWebResponse)wReq.GetResponse();
                    
                    StreamReader reader = new StreamReader(wRes.GetResponseStream());
                    responseStream = reader.ReadToEnd();
                    reader.Close();
                    wRes.Close();
    
                    if (responseStream.Length > 0)
                    {
                        string value = "email=dinhkhanh.bkhn@gmail.com" + "password=t2610k0211";
    
                        HttpWebRequest wReqLogin = (HttpWebRequest)WebRequest.Create("http://ungvien.com.vn/employer/main.php");
    
                        wReqLogin.UserAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17";
                        wReqLogin.Method = "POST";
                        wReqLogin.ContentType = "application/x-www-form-urlencoded";
                        wReqLogin.CookieContainer = cookContainer;
                        wReqLogin.AllowAutoRedirect = true;//bỏ qua response trước khi redirect
                        wReqLogin.ContentLength = value.Length;
    
    
                        Uri uri = new Uri("http://ungvien.com.vn/");
                        
    
                        using (StreamWriter writer = new StreamWriter(wReqLogin.GetRequestStream(), Encoding.ASCII))
                        {
                            writer.Write(value);
                        }
    
                        HttpWebResponse wResLogin = (HttpWebResponse)wReqLogin.GetResponse();
                        cookContainer.Add(wResLogin.Cookies);
                        reader = new StreamReader(wResLogin.GetResponseStream());
                        responseStream = reader.ReadToEnd();
                        reader.Close();
                        wResLogin.Close();
    
                        //Get thông tin trang mới
                        HttpWebRequest reqInfor = (HttpWebRequest)WebRequest.Create(urlGetInfor);
                        reqInfor.UserAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17";
                        reqInfor.CookieContainer = cookContainer;
                        HttpWebResponse resInfor = (HttpWebResponse)reqInfor.GetResponse();
                        reader = new StreamReader(resInfor.GetResponseStream());
                        responseStreamInfor = reader.ReadToEnd();
                        reader.Close();
                        resInfor.Close();
    
                    }
                }
                catch { }
    
                return responseStreamInfor;
    Em viết lại như thế này vẫn không chạy được ạ

  4. #4
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Cần tìm gia sư dạy thêm về c# ở Hà Nội, nội dung cần học giống với nội dung của topic này, mình cần học để code auto post bài lên vài forum.

    Mình đã học xong 1 khóa C# base, xử lý chuỗi khá thành thạo, đã tự code đc tool get data từ web về, xử lý cắt chuỗi, ghi ra file txt... giờ cần học để code auto post bài lên forum từ nội dung trong file .txt

    Bạn nào có thể giúp mình pm skype mình nhé: gptviet

  5. #5
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Đây lại là trang khác.

    Bạn nên dùng các chức năng có sẵn của các trình duyệt để xem dữ liệu được gửi nhận như thế nào.
    Trang http://ungvien.com.vn/employer/main.php có ô đăng nhập nhưng nó gửi sang trang ẩn là: http://ungvien.com.vn/employer/profile_common.php?tab=login

    Mã:
    <form style="margin:0" name="loginForm" method="post" action="profile_common.php?tab=login" onsubmit="return checkLogin(this,this.password);"><!-- ... --></form>
    Đồng thời dữ liệu gửi của trang này:
    Mã:
    email:email@email.com
    password:MyPassword
    x:40
    y:18
    axn:1
    x,y có thể là tọa độ của con trỏ chuột.

  6. #6
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi depzai
    Bác chỉ ae cách xem trong trình duyệt đi , mình chưa biết cái này [IMG]images/smilies/biggrin.png[/IMG]
    Với chrome thì bấm F12, bật qua tab Networks rồi xem các giá trị nó post ở khung bên phải.
    Khi lấy nội dung trang chứa form lần đầu tiên, bạn nên lấy tất cả các input có giá trị (attr value) rồi post kèm những trường cần handle.

  7. #7
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi SITUVNX
    Đây lại là trang khác.

    Bạn nên dùng các chức năng có sẵn của các trình duyệt để xem dữ liệu được gửi nhận như thế nào.
    Trang http://ungvien.com.vn/employer/main.php có ô đăng nhập nhưng nó gửi sang trang ẩn là: http://ungvien.com.vn/employer/profile_common.php?tab=login

    [CODE]<form style="margin:0" name="loginForm" method="post" action="profile_common.php?tab=login" onsubmit="return checkLogin(this,this.password);">

    </div>
    </div>Bác chỉ ae cách xem trong trình duyệt đi , mình chưa biết cái này [IMG]images/smilies/biggrin.png[/IMG]

  8. #8
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi trinvh
    Với chrome thì bấm F12, bật qua tab Networks rồi xem các giá trị nó post ở khung bên phải.
    Khi lấy nội dung trang chứa form lần đầu tiên, bạn nên lấy tất cả các input có giá trị (attr value) rồi post kèm những trường cần handle.
    Mong các bạn giúp đỡ mình với, mình mày mò tự học theo mẫu ở trên đã login đc vào website, up 1 file lên thì trong cái f12 của chrome, giá trị nó POST như thế này:


    Request Payload
    ------WebKitFormBoundaryp9A4KNiVB9vi8CkG
    Content-Disposition: form-data; name="name"

    Anime backgroup
    ------WebKitFormBoundaryp9A4KNiVB9vi8CkG
    Content-Disposition: form-data; name="torrent"; filename="anime_music_background.jpg.torrent"
    Content-Type: application/octet-stream


    ------WebKitFormBoundaryp9A4KNiVB9vi8CkG
    Content-Disposition: form-data; name="torrenturl"


    ------WebKitFormBoundaryp9A4KNiVB9vi8CkG
    Content-Disposition: form-data; name="catid"

    1_32
    ------WebKitFormBoundaryp9A4KNiVB9vi8CkG
    Content-Disposition: form-data; name="info"

    http://www.google.com
    ------WebKitFormBoundaryp9A4KNiVB9vi8CkG
    Content-Disposition: form-data; name="description"

    Search at: http://www.google.com
    ------WebKitFormBoundaryp9A4KNiVB9vi8CkG
    Content-Disposition: form-data; name="rules"

    1
    ------WebKitFormBoundaryp9A4KNiVB9vi8CkG
    Content-Disposition: form-data; name="submit"

    Upload
    ------WebKitFormBoundaryp9A4KNiVB9vi8CkG--
    Cho mình hỏi với trường hợp này cái "value" để write giá trị viết gì nhỉ [IMG]images/smilies/smile.png[/IMG]

  9. #9
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi hiepgv37
    Em cám ơn bác nhưng vẫn không dùng được bác ơi


    Em viết lại như thế này vẫn không chạy được ạ
    có thể làm như thế này nè bạn


    Mã:
          var username="abc@gmail.com";      var pass="1111";       var value = string.Format("ctl00%24ScriptManager1=ctl00%24ContentPlaceHolder1%24UpdatePanel1%7Cctl00%24ContentPlaceHolder1%24btnLogin&ctl00%24ContentPlaceHolder1%24txtEmail={0}&ctl00%24ContentPlaceHolder1%24ValidatorCalloutExtender1_ClientState=&ctl00%24ContentPlaceHolder1%24ValidatorCalloutExtender2_ClientState=&ctl00%24ContentPlaceHolder1%24txtPassword={1}&ctl00%24ContentPlaceHolder1%24ValidatorCalloutExtender3_ClientState=&ctl00%24ContentPlaceHolder1%24ValidatorCalloutExtender6_ClientState=&__EVENTTARGET=&__EVENTARGUMENT=&__VIEWSTATE=%2FwEPDwUKMTg0MTQ3NjI5Mg9kFgJmD2QWAgIDD2QWBgIDD2QWDAIFDw8WAh4ISW1hZ2VVcmwFE34vSW1hZ2VzL2xhbmdlbi5wbmdkZAINDxYCHgtfIUl0ZW1Db3VudAIGFgxmD2QWAmYPFQMKbm8tY3VycmVudBcvdHV5ZW5kdW5nL0RlZmF1bHQuYXNweAtUcmFuZyBjaOG7p2QCAQ9kFgJmDxUDCm5vLWN1cnJlbnQWL3R1eWVuZHVuZy9zZWFyY2guYXNweA1Uw6xtIGjhu5Mgc8ahZAICD2QWAmYPFQMKbm8tY3VycmVudBcvdHV5ZW5kdW5nL3Bvc3Rqb2IuYXNweBXEkMSDbmcgdHV54buDbiBk4bulbmdkAgMPZBYCZg8VAwpuby1jdXJyZW50Ky90dXllbmR1bmcvam9icmVzcG9uc2VzLmFzcHg%2FdHlwZT12aWV3X2xpc3QTUXXhuqNuIGzDvSBo4buTIHPGoWQCBA9kFgJmDxUDCm5vLWN1cnJlbnQaL3R1eWVuZHVuZy9qb2JtYW5hZ2VyLmFzcHgZUXXhuqNuIGzDvSB0dXnhu4NuIGThu6VuZ2QCBQ9kFgJmDxUDB2N1cnJlbnQZL3R1eWVuZHVuZy9teWFjY291bnQuYXNweAxUw6BpIGtob%2BG6o25kAg8PDxYEHgRUZXh0BQ3EkMSDbmcgbmjhuq1wHgtOYXZpZ2F0ZVVybAU6fi90dXllbmR1bmcvbG9naW4uYXNweD9SZXR1cm5Vcmw9JTJmdHV5ZW5kdW5nJTJmTG9naW4uYXNweGRkAhEPDxYCHgdWaXNpYmxlaGRkAhMPDxYEHwIFCsSQxINuZyBrw70fAwUNcmVnaXN0ZXIuYXNweGRkAhkQPCsADQIADxYCHgtfIURhdGFCb3VuZGdkDBQrAAoFIzA6MCwwOjEsMDoyLDA6MywwOjQsMDo1LDA6NiwwOjcsMDo4FCsAAhYQHwIFGUPhuq1wIG5o4bqtdCB0w6BpIGtob%2BG6o24eBVZhbHVlBRlD4bqtcCBuaOG6rXQgdMOgaSBraG%2FhuqNuHwMFJC90dXllbmR1bmcvcmVnaXN0ZXIuYXNweD90eXBlPXVwZGF0ZR4HVG9vbFRpcAUZQ%2BG6rXAgTmjhuq10IFTDoGkgS2hv4bqjbh4HRW5hYmxlZGceClNlbGVjdGFibGVnHghEYXRhUGF0aAUkL3R1eWVuZHVuZy9yZWdpc3Rlci5hc3B4P3R5cGU9dXBkYXRlHglEYXRhQm91bmRnZBQrAAIWDB8CBQF8HwYFAXwfCGcfCWgfCgUkN2MwNjBlMTItMThkYy00YzY3LWI4ZmItZjFkYTgwZDBiYjQ1HwtnZBQrAAIWEB8CBRNUaMO0bmcgdGluIGPDtG5nIHR5HwYFE1Row7RuZyB0aW4gY8O0bmcgdHkfAwUXL3R1eWVuZHVuZy9wcm9maWxlLmFzcHgfBwUTVGjDtG5nIFRpbiBDw7RuZyBUeR8IZx8JZx8KBRcvdHV5ZW5kdW5nL3Byb2ZpbGUuYXNweB8LZ2QUKwACFgwfAgUBfB8GBQF8HwhnHwloHwoFJDVlN2Q0YzU4LTlkZjEtNDQ5Yy1iNzMwLTQ4NzcwNjE4NTQyNB8LZ2QUKwACFhAfAgUNTG9nbyBjw7RuZyB0eR8GBQ1Mb2dvIGPDtG5nIHR5HwMFFC90dXllbmR1bmcvbG9nby5hc3B4HwcFEUPhuq1wIG5o4bqtdCBMb2dvHwhnHwlnHwoFFC90dXllbmR1bmcvbG9nby5hc3B4HwtnZBQrAAIWDB8CBQF8HwYFAXwfCGcfCWgfCgUkYTdmNTg3NGQtNWRkOS00NjU5LWE2ZjYtMzRmZmRhMDEwYmU1HwtnZBQrAAIWEB8CBRPEkOG7lWkgbeG6rXQga2jhuql1HwYFE8SQ4buVaSBt4bqtdCBraOG6qXUfAwUeL3R1eWVuZHVuZy9jaGFuZ2VwYXNzd29yZC5hc3B4HwcFE8SQ4buVaSBN4bqtdCBLaOG6qXUfCGcfCWcfCgUeL3R1eWVuZHVuZy9jaGFuZ2VwYXNzd29yZC5hc3B4HwtnZBQrAAIWDB8CBQF8HwYFAXwfCGcfCWgfCgUkMzQ0NGFmOGYtZjVhOS00MDM3LWEzZjktY2EzMGZmN2E0NGJhHwtnZBQrAAIWEB8CBRvEkOG7lWkgZS1tYWlsIMSRxINuZyBuaOG6rXAfBgUbxJDhu5VpIGUtbWFpbCDEkcSDbmcgbmjhuq1wHwMFGy90dXllbmR1bmcvY2hhbmdlZW1haWwuYXNweB8HBRfEkOG7lWkgRW1haWwgVHJ1eSBD4bqtcB8IZx8JZx8KBRsvdHV5ZW5kdW5nL2NoYW5nZWVtYWlsLmFzcHgfC2dkZGQCBQ9kFgICAg9kFgJmD2QWBAIBDw8WAh8CBVU8Zm9udCBjb2xvcj1yZWQ%2BRW1haWwgxJHEg25nIG5o4bqtcCBraMO0bmcgxJHDum5nLCB2dWkgbMOybmcga2nhu4NtIHRyYSBs4bqhaS48L2ZvbnQ%2BZGQCBw8PZBYCHglvbmtleWRvd24FvQFpZiAoKGV2ZW50LndoaWNoICYmIGV2ZW50LndoaWNoID09IDEzKSB8fCAoZXZlbnQua2V5Q29kZSAmJiBldmVudC5rZXlDb2RlID09IDEzKSkge2RvY3VtZW50LmZvcm1zWzBdLmVsZW1lbnRzWydjdGwwMCRDb250ZW50UGxhY2VIb2xkZXIxJGJ0bkxvZ2luJ10uY2xpY2soKTtyZXR1cm4gZmFsc2U7fSBlbHNlIHJldHVybiB0cnVlOyBkAgcPZBYCAgIQPCsADQIADxYCHwVnZAwUKwAMBSwwOjAsMDoxLDA6MiwwOjMsMDo0LDA6NSwwOjYsMDo3LDA6OCwwOjksMDoxMBQrAAIWEB8CBRdHaeG7m2kgdGhp4buHdSB24buBIE5JQx8GBRdHaeG7m2kgdGhp4buHdSB24buBIE5JQx8DBRcvdHV5ZW5kdW5nL2Fib3V0dXMuYXNweB8HBQ5HaeG7m2kgVGhp4buHdR8IZx8JZx8KBRcvdHV5ZW5kdW5nL2Fib3V0dXMuYXNweB8LZ2QUKwACFgwfAgUBfB8GBQF8HwhnHwloHwoFJGQzNWM1NjFmLTRiODEtNDQ2Zi04MjE2LWFkMDkyMjI1ZjlhNB8LZ2QUKwACFhAfAgUdSMaw4bubbmcgZOG6q24gdHV54buDbiBk4bulbmcfBgUdSMaw4bubbmcgZOG6q24gdHV54buDbiBk4bulbmcfAwUTL3R1eWVuZHVuZy9mYXEuYXNweB8HBQtUcuG7oyBHacO6cB8IZx8JZx8KBRMvdHV5ZW5kdW5nL2ZhcS5hc3B4HwtnZBQrAAIWDB8CBQF8HwYFAXwfCGcfCWgfCgUkMGE0MDliYmEtNDNjZC00ZDMzLTkwZjgtYzQzMTRiOGI4YmM2HwtnZBQrAAIWEB8CBQpMacOqbiBo4buHHwYFCkxpw6puIGjhu4cfAwUZL3R1eWVuZHVuZy9jb250YWN0dXMuYXNweB8HBQpMacOqbiBI4buHHwhnHwlnHwoFGS90dXllbmR1bmcvY29udGFjdHVzLmFzcHgfC2dkFCsAAhYMHwIFAXwfBgUBfB8IZx8JaB8KBSQ3YjFhM2E2Yi01NWRhLTRlNmUtYWY1Ny02MjczNTRkMmNhM2QfC2dkFCsAAhYQHwIFGUThu4tjaCB24bulICYgQuG6o25nIGdpw6EfBgUZROG7i2NoIHbhu6UgJiBC4bqjbmcgZ2nDoR8DBRgvdHV5ZW5kdW5nL3NlcnZpY2VzLmFzcHgfBwUZROG7i2NoIHbhu6UgJiBC4bqjbmcgZ2nDoR8IZx8JZx8KBRgvdHV5ZW5kdW5nL3NlcnZpY2VzLmFzcHgfC2dkFCsAAhYMHwIFAXwfBgUBfB8IZx8JaB8KBSQ3M2JhZjMwMC05MjA0LTRlYzMtOTQ5My1iMDUyZWI3OTM1ZjIfC2dkFCsAAhYQHwIFGlRo4buPYSB0aHXhuq1uIHPhu60gZOG7pW5nHwYFGlRo4buPYSB0aHXhuq1uIHPhu60gZOG7pW5nHwMFFS90dXllbmR1bmcvdGVybXMuYXNweB8HBRpUaOG7j2EgVGh14bqtbiBT4butIEThu6VuZx8IZx8JZx8KBRUvdHV5ZW5kdW5nL3Rlcm1zLmFzcHgfC2dkFCsAAhYMHwIFAXwfBgUBfB8IZx8JaB8KBSQxY2UzOWFlMi0xMDNhLTQ0MGQtOTdjNC1kMDUxZTgzODU4YTMfC2dkFCsAAhYQHwIFGFF1eSDEkeG7i25oICBi4bqjbyBt4bqtdB8GBRhRdXkgxJHhu4tuaCAgYuG6o28gbeG6rXQfAwUWL3R1eWVuZHVuZy9wb2xpY3kuYXNweB8HBRdRdXkgxJDhu4tuaCBC4bqjbyBN4bqtdB8IZx8JZx8KBRYvdHV5ZW5kdW5nL3BvbGljeS5hc3B4HwtnZGRkGAEFHl9fQ29udHJvbHNSZXF1aXJlUG9zdEJhY2tLZXlfXxYCBRhjdGwwMCRIZWFkZXIxJExhbmdCdXR0b24FL2N0bDAwJENvbnRlbnRQbGFjZUhvbGRlcjEkQ2hlY2tCb3hSZW1lbWJlckVtYWlsclK7gZYpRH9FlHGvqSyQjm31F1g%3D&__EVENTVALIDATION=%2FwEWCwKVtqaVDQLUnp3xAQK1tankAgLwi5HgCgL90KKTCAK%2FtoC%2FAwKE2KHdBgKO9e%2BRAQK87PLABgLhlITBAwKb34OuCAW%2FUj8NpRCo82uqcIEsshQMpqJb&__AjaxControlToolkitCalendarCssLoaded=&__ASYNCPOST=true&ctl00%24ContentPlaceHolder1%24btnLogin=%C4%90%C4%83ng%20nh%E1%BA%ADp", HttpUtility.UrlEncode(username), HttpUtility.UrlEncode(pass));             HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://tuyendung.com.vn/tuyendung/Login.aspx");            request.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36";            request.Headers.Add("Origin", "http://tuyendung.com.vn");            request.Headers.Add("X-MicrosoftAjax", "Delta=true");            request.Referer = @"http://tuyendung.com.vn/tuyendung/Login.aspx";            request.Host = "tuyendung.com.vn";            request.KeepAlive = true;            request.Method = "POST";            request.ContentType = "application/x-www-form-urlencoded; charset=UTF-8";             request.ContentLength = value.Length;            using (StreamWriter writer = new StreamWriter(request.GetRequestStream(), Encoding.ASCII))            {                writer.Write(value);            }            HttpWebResponse wResLogin = (HttpWebResponse)request.GetResponse();            var   reader = new StreamReader(wResLogin.GetResponseStream());            var   responseStream = reader.ReadToEnd();            reader.Close();            wResLogin.Close();            if (responseStream.Contains("Mật khẩu không đúng, vui lòng kiểm tra lại"))            {                Console.WriteLine("Login Fail");            }            else                Console.WriteLine("Login Success");            Console.Read();

  10. #10
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Một quá trình kinh khủng là phức tạp. Cách tốt nhất là làm WebBrowser1 rồi sau đó tìm txt fill in roi fire button login.
    Vài cái cần lưu ý khi sử dụng, giữ browser object này lại để có thể navigate qua trang khác, brwoser rất good cho phần này nếu ASP.NET đó dùng ViewState thì nó cũng carry over.

    HttpWebRequest req = WebRequest.Create("http://thuvienphapluat.vn/page/login.aspx") // View state issue

    Nếu làm kiểu này req phải là dạng member (nằng trong memory (global) thay vì local variable), không thì after login thì Garbarge collector sẽ collect đi và khi navigate qua trang khác website nó sẽ báo là chưa LOGIN.

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •