求淘宝自动登录源码 HttpRequestPost实现
现在想做一个发贴机,但是,淘宝自动登录这块,久攻不破,网上好多贴子都看了,都是迷迷糊糊
说不到点上namespace taobao
{
    public partial class Form3 : Form
    {
        public Form3()
        {
            InitializeComponent();
        }
        //HttpCookie cookie = HttpContext.Current.Request.Cookies[cookiename];
        //// 用户 Cookie 存储键
        //public const string CookieUser = "devin_cn_user";
        //// 用户Cookie名称键
        //public const string CookieUserName = "UserName";        //Cookies集合保存        public CookieCollection CCol = null;
        // string cookieHeader;
        //HttpCookie cookie = HttpContext.Current.Request.Cookies["MyCookie"];
        private void button1_Click(object sender, EventArgs e)
        {
          //  string s=Login("jjj", "mm");
           // textBox2.Text = s;/////////////////////////////////////////////////////////////////////////////////////            Stream outstream = null;
            Stream instream = null;
            StreamReader sr = null;
        
            HttpWebRequest request = null;
            CookieContainer cc = new CookieContainer();            string geturl = "https://login.taobao.com/member/login.jhtml";
            Encoding encoding = Encoding.GetEncoding("gb2312");            string postData = "TPL_username=%B8%D0%B6%AF%C9%CF%B5%DB2008&TPL_password=[密码
            byte[] data = encoding.GetBytes(postData);
            // 准备请求...            // 设置参数
            request = WebRequest.Create(geturl) as HttpWebRequest;            request.AllowAutoRedirect = true;
            //request.ContentType = "application/x-www-form-urlencoded;charset=gb2312";
            request.KeepAlive = true;
            //request.Accept = "image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, application/vnd.ms-excel, application/msword, application/vnd.ms-powerpoint, */*";
            //request.Referer = "https://login.taobao.com/member/login.jhtml";
            //request.UserAgent =
            //    "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)";
            request.ContentLength = data.Length;
            request.ContentType = "application/x-www-form-urlencoded";
            request.Method = "POST";
            //  CookieCollection myCookies = null;
            request.CookieContainer = cc;
            outstream = request.GetRequestStream();
            outstream.Write(data, 0, data.Length);
            outstream.Close();
            //     HttpCookie cookie = HttpContext.Current.Request.Cookies["dushihui"];
            //
            //发送请求并获取相应回应数据            HttpWebResponse mresponse = request.GetResponse() as HttpWebResponse;            CCol = cc.GetCookies(new Uri("http://trade.taobao.com/trade/itemlist/list_sold_items.htm"));            //直到request.GetResponse()程序才开始向目标网页发送Post请求
            instream = mresponse.GetResponseStream();            //   cookieHeader = request.CookieContainer.GetCookieHeader(new Uri("https://login.taobao.com/member/login.jhtml"));
            // myCookies = response.Cookies; 
            //  response.Cookies("MyCookie").Domain = ".taobao.com";
            //   response.Cookies("MyCookie").Path = "/";
            sr = new StreamReader(instream, encoding);
            //foreach (Cookie item in response.Cookies)
            //{
            //    CCol.Add(new Uri(geturl), item);
            //}            //返回结果网页(html)代码
            string content = sr.ReadToEnd();
            string err = string.Empty;
////////////////////////////////////////////////////////////////////////////////////////
            //  //textBox1.Text = s;
            ////  textBox1.Text = textBox1 + "/" + getdata("http://180.86.75.159/btoa/bt/moneyTable.asp");
            HttpWebRequest req = (HttpWebRequest)WebRequest.Create(new Uri("http://trade.taobao.com/trade/itemlist/list_sold_items.htm"));
            req.CookieContainer = new CookieContainer();            req.CookieContainer.Add(new Uri("http://trade.taobao.com/trade/itemlist/list_sold_items.htm"),CCol);
           // req.CookieContainer = cc;
           // req.ContentType = "text/html";
           // req.Headers.Add("cookie:" + cookieHeader);            //  //刚才那个CookieContainer已经存有了Cookie,把它附加到HttpWebRequest中则能直接通过验证 
            HttpWebResponse myHttpWebResponse = (HttpWebResponse)req.GetResponse();
         
              Stream myResponseStream = myHttpWebResponse.GetResponseStream();
            StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("gb2312"));
             string outdata = myStreamReader.ReadToEnd();
              myStreamReader.Close();
              myResponseStream.Close();
             textBox2.Text = outdata;              string filename = Path.GetTempFileName();              using (StreamWriter sw = new StreamWriter(filename, false, Encoding.Default))
             {
                 sw.Write(outdata);
            }              webBrowser1.Navigate("file://"+filename);        }