首页 > 代码库 > 天猫登录源码 POST C#
天猫登录源码 POST C#
HttpHelper 请从网络中搜索;
public partial class LoginTMall : Form
{
public LoginTMall()
{
InitializeComponent();
}
private void btnLogin_Click(object sender, EventArgs e)
{
string postDate = getPostString();
HttpItem itemLogin = new HttpItem()
{
URL = "https://login.taobao.com/member/login.jhtml",
Method = "POST",
ContentType = "application/x-www-form-urlencoded",
Referer = "https://www.taobao.com/",
Postdata = http://www.mamicode.com/postDate,
Cookie = CommonDB.tmailModel.cookie,
};
HttpHelper helperLogin = new HttpHelper();
HttpResult resultLogin = helperLogin.GetHtml(itemLogin);
CommonDB.tmailModel.cookie = resultLogin.Cookie;
string html = resultLogin.Html;
if (html.ToLower().Contains("gotoURL:\"http://www.tmall.com/\"".ToLower()) && html.ToLower().Contains("gotoTop:true".ToLower())) {
MessageBox.Show("登录成功!");
}
else
{
string namePwdNotMatch = "您输入的密码和账户名不匹配,请重新输入。";
string reInputcheckcode = "验证码错误,请重新输入";
string checkCodeNeedInput = "为了您的账户安全,请输入验证码。";
if (html.Contains(namePwdNotMatch))
{
MessageBox.Show(namePwdNotMatch);
return;
}
if (html.Contains(checkCodeNeedInput) || html.Contains(reInputcheckcode))
{
string checkCodeUrl = "<img id=\"J_StandardCode_m\" src=http://www.mamicode.com/"https://s.tbcdn.cn/apps/login/static/img/blank.gif\"";
int index = html.IndexOf(checkCodeUrl);
html = html.Substring(index, html.Length - index);
string datasrc = "data-src=http://www.mamicode.com/"";
index = html.IndexOf(datasrc);
html = html.Substring(index, html.Length - index);
html = html.TrimStart(datasrc.ToCharArray());
index = html.IndexOf("\"");
html = html.Substring(0, index);
setCheckCode(html);
MessageBox.Show(checkCodeNeedInput);
return;
}
}
}
private void setCheckCode(string url)
{
try
{
picBox.Image = Image.FromStream(System.Net.WebRequest.Create(url).GetResponse().GetResponseStream());
} catch (Exception ex) { Text = ex.Message; } }
private void LoginTMall_Load(object sender, EventArgs e) { }
private string getPostString()
{
PostParaPair model = new PostParaPair();
string checkCode = txtCheckCode.Text.Trim();
if (checkCode.Length != 0)
{
model.Add(new PostParaPair()
{ Key = "TPL_checkcode", Value = http://www.mamicode.com/checkCode });
}
string pwd = txtPwd.Text.Trim();
if (pwd.Length != 0)
{
model.Add(new PostParaPair() { Key = "TPL_password", Value = http://www.mamicode.com/pwd }); }
string name = txtUName.Text.Trim();
if (name.Length != 0)
{
model.Add(new PostParaPair() { Key = "TPL_username", Value = http://www.mamicode.com/name });
}
model.Add(new PostParaPair() { Key = "allp", Value = "http://www.mamicode.com/assets_css=2.0.0/login_pc.css&enup_css=2.0.0/enup_pc.css&assets_js=2.3.8/login_performance.js" });
model.Add(new PostParaPair() { Key = "CtrlVersion", Value = "http://www.mamicode.com/1,0,0,7" }); model.Add(new PostParaPair() { Key = "fc", Value = "http://www.mamicode.com/default" });
model.Add(new PostParaPair() { Key = "from", Value = "http://www.mamicode.com/tmall" });
model.Add(new PostParaPair() { Key = "full_redirect", Value = "http://www.mamicode.com/true" });
model.Add(new PostParaPair() { Key = "loginASR", Value = "http://www.mamicode.com/0" });
model.Add(new PostParaPair() { Key = "loginASRSuc", Value = "http://www.mamicode.com/0" });
model.Add(new PostParaPair() { Key = "loginsite", Value = "http://www.mamicode.com/0" });
model.Add(new PostParaPair() { Key = "loginType", Value = "http://www.mamicode.com/3" });
model.Add(new PostParaPair() { Key = "naviVer", Value = "http://www.mamicode.com/ie|9" });
model.Add(new PostParaPair() { Key = "newlogin", Value = "http://www.mamicode.com/0" });
model.Add(new PostParaPair() { Key = "osVer", Value = "http://www.mamicode.com/windows|6.1" });
model.Add(new PostParaPair() { Key = "poy", Value = "http://www.mamicode.com/XOR_1_000000000000000000000000000000_65585B56440B6279736B017E6F0065" }); model.Add(new PostParaPair() { Key = "pstrong", Value = "http://www.mamicode.com/2" });
model.Add(new PostParaPair() { Key = "sr", Value = "http://www.mamicode.com/1366*768" });
model.Add(new PostParaPair() { Key = "style", Value = "http://www.mamicode.com/miniall" });
model.Add(new PostParaPair() { Key = "sub", Value = "http://www.mamicode.com/false" });
model.Add(new PostParaPair() { Key = "support", Value = "http://www.mamicode.com/000001" });
model.Add(new PostParaPair() { Key = "tid", Value = "http://www.mamicode.com/XOR_1_000000000000000000000000000000_602B4C5345787C007D7D057F" }); model.Add(new PostParaPair() { Key = "TPL_redirect_url", Value = "http://www.tmall.com/" });
model.Add(new PostParaPair() { Key = "ua", Value = "http://www.mamicode.com/128JqNYCOQNFccufusYO71CC4hyOrlKBYpjQqg=|JaNECYpwPbpBBIV6MrRKA+k=|JKFGYfR2T4A7K/NKU5Z/L7pIFo1kT5E0LPRIR9JEZQ==|I6VcDJljK61XG5xuJKdYFZdpL6hNAYJwOL5FAIR9NLRLA4F5NbRdfA==|IqRWBuoQQMI5ceoQXMcuMb0UGshidflPWs9ZeA==|Ia5JF4IU|IK5JF4IU|L6lTA+8GEtFuYqZXBJw7KPhaSNFuc6sCH8ciPeVDEMpkdaAOAJg/LPxeTNV0YKMFFYBnOaw6Gw==|LqpNau8UXMc7d/gfUNUufvoJRt0naOkURMQ5feYcU9Ivf/8GQqg+|LatTA+8GLfNWTpYqJbJOEItiSbcybugXR8Ana/AKQsApCOI=|LKpRAZQETMwydvIVNaBaEpRuIqVZFJRqJqdeXtk8d/YMQM4ze/8FTMw2f/sATqVMHJoMUrg=|K6tMa/4XR8Anbu4RVL4o|KqhPaP1iTrUhLftDTIwoJvVhLLleef8CR9wmb+t9LapNE4ZhL61eEZQCIw==|KalOafxjT7QgLPpCTY0pJ/RgLbhfEolwObZOC+F3|KKhPaP1iTrUhLftDTIwoJvVhLLleEolwNbVNAet9|N7dQd+J9Uao+MuRcU5M3Oep+M6ZBDZZvKqpSF/1r|NrZRduNiQaUPFcdpca8QXd4kae4VUNEuYe4WWcwrZv0EQcE+dpwK|NbdQd+ILW7dNCJNpLK07a+wLVcAnaO4VUNNFZA==|NLRTdOFgQ6cNF8Vrc60SX9wma+wXUtMsY+wUW84pZf4GS8w+dZ8J|M7NUc+ZnRL8bAN57RZ0ucOsRQcU/cvUOL8U=|MrBXcOVkR7MXD91fTYo0PNR2KLMjbO4JRMo0FY51JbBZCY13PrtIaYM=|MbFWceRlRr0ZAtx5R58scukSQsY8dfECI8k=|MLBXcOVkR7MXD91fTYo0PNR2KLNJGZ1nLq1VdJ4=|P71afegBUb1CDJdtKK44aO8IVsMka+0RVNJEZQ==|Pr5ZfutqSb0ZAdNRQ4Q6Mtp4Jr1GFpJoI61ffpQ=|Pb1afegBUdcwf/kKRsVTcg==|PLxbfOkAUNcwf/kLR8BWdw==|O7tce+5vTLgcBNZURoE/N999I7hCEpZsKa5Wd50=|OrleeewFVdAia/AKTs8oZ+IaUN5IaQ==|Obtce+5vTKgXCtN8YaQLNOxDWs8oD4p0MKtRGpp9M7BMHJpmKbJKAJtiJswrZ/wVAcRqcPoUWt43Z+MaXtkqC+E=|OLhfeO1sT7sfB9VXRYI8NNx+ILtAEJRtKa9Tcpg=|B4dgR9JTcJQrNu9AXZg3CNB/ZvMUWcI6dPsCTacx|BoZhRtNScZUqN+5BXJk2CdF+Z/IVWcI6dPsHQ6k/|BYViRdBRcoYiOuhqeL8BCeFDHYZ8LKhRFZpgQas=|BIZhRtNScZUqN+5BXJk2CdF+Z/IVMrdKApljKKhPAYJ+LqhUG4B4MqlQFP4ZVc4nM/ZYQsgmaOwFVdEuYucfPtQ=|A4NkQ9ZXdIAkPO5sfrkHD+dFG4B7K69QHJhgQas=|AoJlQtdWdZEuM+pFWJ0yDdV6Y/YRXMc/d/APQ6k/|AYFmQdRVdpItMOlGW54xDtZ5YPUSXsU9dfMIRa85|AIBnQNVUd4MnP+1vfboEDORGGIN5Ka1SH5hlRK4=|D41qTdgxYY1wO6BaHpwKWt06ZPEWWdgha+54WQ==|Do5pTttaeY0pMeNhc7QKAupIFo12JqJfEZFuT6U=|DY1qTdgxYecAT843c/BmRw==|DIxrTNkwYOcAT842f/5oSQ==|C4tsS95ffIgsNOZkdrEPB+9NE4hyIqZbFJVuT6U=|CotsS95ffIgsNOZkdrEPB+9NE4h1MapRAYV4PbNKa4E=|CYhvSN1cf4svN+VndbIMBOxOEItxO6BbC49zPb1BYIo=|CIluSdxdfoouNuRmdLMNBe1PEYp2OKNcDIh0O7tHZow=|F5ZxVsNCYZUxKft5a6wSGvJQDpVrJ7xHF5NgK6hSc5k=|FpdwV8JDYJQwKPp4aq0TG/NRD5RuJL9EFJBiL6tSc5k=|FZRzVMFAY5czK/l7aa4QGPBSDJdrIrlGFpJgLqxef5U=|FJRzVMFAY5czK/l7aa4QGPBSDJdsPL9FCItyU7k=|E5F2UcRFZoI8IvhaUrYJFNd1av8YP7pBCJNqIq07a+wLVcAnb+wWX9FHZg==|EpJ1UsdGZYE/IftZUbUKF9R2afwbVs0yevwATqQy|EZJpJb5FFZB3OrlDE5dpIrlHApllLLdNAINkKbJIAoViJ6BHCIdgLalOAYBnKKpNAoFmKa1KDpVtILtDD5RqOr9MHJllNbBXGZt8MrFWGJx7NbBXBoB5KbNMHJpoOL5NHZtnN7FMHIZ0JKJdDYtzI6VcDIpwILpACJNhMb5ZEol0JL5NHYd1Jb9FCZJ0Ob9YCY92JrxGCZJ0OaJECotsPbkv" }); model.Add(new PostParaPair() { Key = "umto", Value = "http://www.mamicode.com/T7a1f5ec30a29c6b7e223b6872fb8637a" });
return model.ToString(); } }
PostParaPair类的定义
public class PostParaPair
{
List<PostParaPair> paraList = new List<PostParaPair>();
public string Key { get; set; }
public string Value { get; set; }
public void Add(PostParaPair para)
{
paraList.Add(para);
}
public override string ToString()
{
string reString = "";
if (paraList.Count != 0)
{
foreach (PostParaPair item in paraList)
{
reString += string.Format("&{0}={1}", item.Key, CommonMethod.GetUrlEncode(item.Value));
}
}
return reString.TrimStart(‘&‘);
}
}
CommonMethod.GetUrlEncode的定义:
public static string GetUrlEncode(string content)
{
return System.Web.HttpUtility.UrlEncode(content, System.Text.Encoding.UTF8);
}
天猫登录源码 POST C#