2022年淘宝秒杀C#代码 .pdf

上传人:Q****o 文档编号:27520044 上传时间:2022-07-25 格式:PDF 页数:7 大小:46.20KB
返回 下载 相关 举报
2022年淘宝秒杀C#代码 .pdf_第1页
第1页 / 共7页
2022年淘宝秒杀C#代码 .pdf_第2页
第2页 / 共7页
点击查看更多>>
资源描述

《2022年淘宝秒杀C#代码 .pdf》由会员分享,可在线阅读,更多相关《2022年淘宝秒杀C#代码 .pdf(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、using System; using System.Collections; using System.Configuration; using System.Data; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Net; using System.Net.Sockets; using System.Text; using System.Thre

2、ading; using System.IO; using System.Text.RegularExpressions; public partial class MiaoSha : System.Web.UI.Page string strServer = string.Empty; string strPath = string.Empty; protected void Page_Load(object sender, EventArgs e) public static String Recv(Socket sock, Encoding encode) Byte buffer = n

3、ew Byte8192; StringBuilder sb = new StringBuilder(); Thread.Sleep(50);/ 根据页面响应时间进行微调Int32 len = sock.Receive(buffer); sb.Append(encode.GetString(buffer, 0, len); while (sock.Available 0) Thread.Sleep(300);/ 也可以视情况微调Array.Clear(buffer, 0, buffer.Length); len = sock.Receive(buffer); sb.Append(encode.G

4、etString(buffer, 0, len); string ss = encode.GetString(buffer, 0, len); sock.Close(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 7 页 - - - - - - - - - return sb.ToString(); / / Socket 获取页面HTML 同时返回头信息/ / 服务器地址或主机名 / 请求的页面 / post or get / 提交的数据 / Cookies / 返

5、回页面的HTML public string GetHtml(string server, string url, string method, string data, string Cookies) string _method = method.ToUpper(); string _url = string.Empty; if (url = ) _url = /; else if (url.Substring(0, 1) != /) _url = / + url; else _url = url; string formatString = string.Empty; string se

6、ndString = string.Empty; Encoding ASCII = Encoding.Default; / 以下是拼接的HTTP头信息if (_method = GET) formatString = ; formatString += 0 1 HTTP/1.1/r/n; formatString += Host: 2/r/n; formatString += User-Agent:Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.7) Gecko/20091221 Firefox/3.5.7/r/n; forma

7、tString += Accept: text/html/r/n; formatString += Keep-Alive: 300/r/n; formatString += Cookies:3/r/n; formatString += Connection: keep-alive/r/n/r/n; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 7 页 - - - - - - - - - sendString = string.Format(formatString, _

8、method, _url, server, Cookies); else formatString = ; formatString += 0 1 HTTP/1.1/r/n; formatString += Host: 2/r/n; formatString += User-Agent:Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.7) Gecko/20091221 Firefox/3.5.7/r/n; formatString += Accept:text/html/r/n; formatString += Content-

9、Type:application/x-www-form-urlencoded/r/n; formatString += Content-Length:3/r/n; formatString += Referer:http:/ formatString += Keep-Alive:300/r/n; formatString += Cookies:4/r/n; formatString += Connection: keep-alive/r/n/r/n; formatString += 5/r/n; sendString = string.Format(formatString, _method,

10、 _url, server, Encoding.Default.GetByteCount(data), Cookies, data); Byte ByteGet = ASCII.GetBytes(sendString); Byte RecvBytes = new Byte1024; String strRetPage = null; IPAddress hostadd = Dns.Resolve(server).AddressList0; IPEndPoint EPhost = new IPEndPoint(hostadd, 80); Socket s = new Socket(Address

11、Family.InterNetwork, SocketType.Stream, ProtocolType.Tcp); s.Connect(EPhost); if (!s.Connected) strRetPage = 链接主机失败; return strRetPage; s.Send(ByteGet, ByteGet.Length, SocketFlags.None); strRetPage = Recv(s, ASCII); return strRetPage; protected void btnLogin_Click(object sender, EventArgs e) string

12、u = this.txtUserName.Text.Trim(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 7 页 - - - - - - - - - string p = this.txtPwd.Text.Trim(); DateTime st = DateTime.Now; / 淘宝登录需要post 的数据串string sendData = TPL_username= + u + &TPL_password= + Server.UrlEncode(p) +

13、&actionForStable=enable_post_user_action&action=Authenticator&mi_uid=&mcheck=&TPL_redirect_url=http%3A%2F%2F%2Fauction%2Fitem_detail-0db1-3036113cf5455bd74047f1a581ba4be7.htm&_oooo_=http%3A%2F%2F%2Fauction%2Fitem_detail-0db1-3036113cf5455bd74047f1a581ba4be7.htm&event_submit_do_login=anything&abtest=

14、&pstrong=3&from=&yparam=&done=&loginType=3&tid=&support=000001&CtrlVersion=1%2C0%2C0%2C7; string s = GetHtml(, /member/login.jhtml, post, sendData, ); SessionCookies = GetCookies(s); / 从返回的源码中提取cookies,抓取登录后的页面需要附上该cookies protected void btnBuy_Click(object sender, EventArgs e) string strURL = this.

15、txtURL.Text.Trim(); getServerAndPath(strURL); string s = GetHtml(strServer, strPath, get, , SessionCookies.ToString(); /Response.Write(s); if (s.IndexOf( 立即购买 ) 0) string item_id = strURL.Split(-)2.Split(.)0.ToString(); string x_id = strURL.Split(-)1.ToString(); s = GetHtml(, /auction/buy.htm?from=i

16、temDetail&item_id= + item_id + &x_id= + x_id, get, , SessionCookies.ToString(); /Response.Write(s); using (StreamWriter sw = new StreamWriter(Server.MapPath(debug1.html) sw.Write(s); if (s.IndexOf(确认提交订单) 0) SessionCookies = GetCookies(s); string postData = getPostData(s); string r = GetHtml(, /auct

17、ion/buy_now.htm, post, postData, SessionCookies.ToString(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 7 页 - - - - - - - - - if (r.IndexOf(302) 0) using (StreamWriter sw = new StreamWriter(Server.MapPath(debug2.html) sw.Write(r); else / using (StreamWriter

18、sw = new StreamWriter(Server.MapPath(debug2.html) sw.Write(r); else if (s.IndexOf(btn-wait) 0)/该宝贝还处于定时上架的状态 / / 从返回的源代码中提取cookies / / / private string GetCookies(string s) StringBuilder sbCookies = new StringBuilder(); string arr = s.Split(new string /r/n , StringSplitOptions.RemoveEmptyEntries); f

19、oreach (string str in arr) if (str.StartsWith(Set-Cookie: ) int intStart = str.IndexOf(;); string strCookie = str.Substring(12, intStart - 11); sbCookies.Append(strCookie); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 7 页 - - - - - - - - - return sbCookies.To

20、String(); private string GetLocationURL(string s) string RtnString = string.Empty; StringBuilder sbCookies = new StringBuilder(); string arr = s.Split(new string /r/n , StringSplitOptions.RemoveEmptyEntries); foreach (string str in arr) if (str.StartsWith(Location: ) RtnString = str.Substring(11, st

21、r.Length - 11); return RtnString; private void getServerAndPath(string strURL) if (strURL != & strURL.IndexOf(/) 0) int SlashPos = strURL.Substring(7).IndexOf(/); strServer = strURL.Substring(7, SlashPos); strPath = strURL.Substring(SlashPos + 7); else return; / / 从最后确认购买页面的源代码中提取表单数据的数据/ / / privat

22、e string getPostData(string html) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 7 页 - - - - - - - - - string postStr = ; string pat = ; Regex regex = new Regex(pat, RegexOptions.Multiline | RegexOptions.IgnoreCase); MatchCollection mcollection = regex.Matches(

23、html); foreach (Match m in mcollection) GroupCollection gcollection = m.Groups; if (m.ToString().IndexOf(_fma.b._0.s) 0) continue; if (m.ToString().IndexOf(_fma.b._0.c) 0) continue; if (m.ToString().IndexOf(isCheckCode) 0 & gcollection2.Value.ToLower() = true) /isCheckCode = true; postStr += gcollec

24、tion1.Value; postStr += =; postStr += Server.UrlEncode(gcollection2.Value); postStr += &; postStr += n_prov=370000&n_city=370500&n_area=370522&_fma.b._0.w=quicky&_fma.b._0.ac=250&consignment=10&_fma.b._0.au=5&_fma.b._0.c=8888; postStr = postStr.Replace(quantity=0, quantity=1).Replace(_fma.b._0.d= 您不

25、必重复省 -市-区信息;至少5 个字 , _fma.b._0.d= + Server.UrlEncode(收货人的具体地址).Replace(_fma.b._0.po=, _fma.b._0.po=230031).Replace(_fma.b._0.de=, _fma.b._0.de=+Server.UrlEncode(啊峰).Replace(_fma.b._0.u=, _fma.b._0.u=0).Replace(_fma.b._0.di=1, _fma.b._0.di=370522).Replace(_fma.b._0.deli=, _fma.b._0.deli=13888888888); postStr += &_fma.b._0.s=2; /postStr = Server.UrlEncode(postStr); return postStr; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 7 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁