- 浏览: 1092468 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (453)
- Struts2 (30)
- Spring (14)
- iBATIS (6)
- Hibernate (13)
- JVM (5)
- JSON (10)
- Ajax (5)
- Flex (1)
- JavaScript (25)
- PowerDesigner (4)
- 项目管理 (7)
- 数据库 (29)
- 生活 (18)
- 软件应用 (21)
- 无线技术 (2)
- Linux (39)
- TOP开发学习 (2)
- JAVA工具小TIPS (2)
- Java通用 (52)
- XML (3)
- 软件测试 (29)
- Maven (10)
- Jquery (1)
- 正则表达式 (3)
- 应用服务器 (15)
- Android (5)
- linux 和windowx 下 tomcat 设置JVM (8)
- 应用服务器 连接池 (4)
- Linux 后台输出中文乱码 (1)
- Hadoop (28)
- python (2)
- Kafka (7)
- Storm (5)
- Elasticsearch (7)
- fddd (1)
最新评论
-
kafodaote:
Kafka分布式消息系统实战(与JavaScalaHadoop ...
分布式消息系统Kafka初步 -
小灯笼:
LoadRunner性能测试实战课程网盘地址:http://p ...
LoadRunner性能测试应用(八) -
成大大的:
Kafka分布式消息系统实 ...
分布式消息系统Kafka初步 -
hulalayaha2:
Loadrunner性能测试视频教程下载学习:http://p ...
LoadRunner性能测试应用(八) -
993042835:
搞好 谢谢
org.hibernate.exception.ConstraintViolationException: could not delete:
说明,网上转的。
这段淘宝秒杀真的很火,掌故的拿几个宝物配备布置成低价限时来促销,就被那一些有秒杀器的家伙0秒下单了,是在是受没完也看不下于去,也测验考试的去写个秒杀器,探索的几天几夜,终于有点小成就,但还不完善,要是碰到有证验码 就死翘翘。
但据说有人的秒杀器就能绕过证验码,还切当不移,我也中文搜索网站GG 几天几夜,没找到谜底,但至少有了点端倪,就是什么cookies强制逾期法,来让证验码掉效,可以提早输入证验码。
我懂患上园子儿里许多天才。可以点拨点拨,配合进修进修,有兴趣的可以完善下,同时也学学深奥的破解证验码的技能。
要是你真的绕过证验码了,那去年9月26日,淘宝1元包邮秒杀条记本就是你的了。哈哈哈。。。。
代码都贴在这了,但代码中socket获取页面的时候有时获取的不全,需要调解线程sleep时间什么的的工具,代码里的工具多的很从网上copy下来到,作者也不不懂患上是谁了,我就用了,请多多海涵。
待会截个前台的图,好让没有接触过秒杀的伴侣有个大要的相识,有兴趣的可以加我QQ(278113569 注:博客园)。
二话不说了,截图。
先输入淘宝的账户以及暗码,之后贴上宝物的地址 点击检验测定并抢购。
全数源代码 1 using System;
2 using System.Collections;
3 using System.Configuration;
4 using System.Data;
5 using System.Web;
6 using System.Web.Security;
7 using System.Web.UI;
8 using System.Web.UI.HtmlControls;
9 using System.Web.UI.WebControls;
10 using System.Net;
11 using System.Net.Sockets;
12 using System.Text;
13 using System.Threading;
14 using System.IO;
15 using System.Text.RegularExpressions;
16
17 public partial class MiaoSha : System.Web.UI.Page
18 {
19 string strServer = string.Empty;
20 string strPath = string.Empty;
21
22 protected void Page_Load(object sender, EventArgs e)
23 {
24
25 }
26
27 public static String Recv(Socket sock, Encoding encode)
28 {
29 Byte[] buffer = new Byte[8192];
30 StringBuilder sb = new StringBuilder();
31
32 Thread.Sleep(50);//根据页面相应时间举行微调
33 Int32 len = sock.Receive(buffer);
34 sb.Append(encode.GetString(buffer, 0, len));
35
36 w你好le (sock.Available > 0)
37 {
38 Thread.Sleep(300);//也可以视环境微调
39 Array.Clear(buffer, 0, buffer.Length);
40 len = sock.Receive(buffer);
41 sb.Append(encode.GetString(buffer, 0, len));
42 string ss = encode.GetString(buffer, 0, len);
43 }
44 sock.Close();
45 return sb.ToString();
46 }
47
48 /// <summary>
49 /// Socket获取页面HTML同时归回头信息
50 /// </summary>
51 /// <param name="server">服务器地址或者主机名</param>
52 /// <param name="url">哀求的页面</param>
53 /// <param name="method">post or get</param>
54 /// <param name="data">提交处理的数值</param>
55 /// <param name="Cookies">Cookies</param>
56 /// <returns>归回页面的HTML</returns>
57 public string GetHtml(string server, string url, string method, string data, string Cookies)
58 {
59 string _method = method.ToUpper();
60 string _url = string.Empty;
61 if (url == "")
62 {
63 _url = "/";
64 }
65 else if (url.Substring(0, 1) != "/")
66 {
67 _url = "/" url;
68 }
69 else
70 {
71 _url = url;
72 }
73 string formatString = string.Empty;
74 string sendString = string.Empty;
75 Encoding ASCII = Encoding.Default;
76
77 //以下是拼接的HTTP头信息
78 if (_method == "GET")
79 {
80 formatString = "";
81 formatString = "{0} {1} HTTP/1.1\r\n";
82 formatString = "Host: {2}\r\n";
83 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";
84 formatString = "Accept: text/html\r\n";
85 formatString = "Keep-Alive: 300\r\n";
86 formatString = "Cookies:{3}\r\n";
87 formatString = "Connection: keep-alive\r\n\r\n";
88 sendString = string.Format(formatString, _method, _url, server, Cookies);
89 }
90 else
91 {
92 formatString = "";
93 formatString = "{0} {1} HTTP/1.1\r\n";
94 formatString = "Host: {2}\r\n";
95 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";
96 formatString = "Accept:text/html\r\n";
97 formatString = "Content-Type:application/x-www-form-urlencoded\r\n";
98 formatString = "Content-Length:{3}\r\n";
99 formatString = "Referer:http://buy.taobao.com/auction/buy_now.jhtml";
100 formatString = "Keep-Alive:300\r\n";
101 formatString = "Cookies:{4}\r\n";
102 formatString = "Connection: keep-alive\r\n\r\n";
103 formatString = "{5}\r\n";
104 sendString = string.Format(formatString, _method, _url, server, Encoding.Default.GetByteCount(data), Cookies, data);
105 }
106
107 Byte[] ByteGet = ASCII.GetBytes(sendString);
108 Byte[] RecvBytes = new Byte[1024];
109 String strRetPage = null;
110 IPAddress hostadd = Dns.Resolve(server).AddressList[0];
111 IPEndPoint EPhost = new IPEndPoint(hostadd, 80);
112 Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
113 s.Connect(EPhost);
114 if (!s.Connected)
115 {
116 strRetPage = "链接主机掉败";
117 return strRetPage;
118 }
119 s.Send(ByteGet, ByteGet.Length, SocketFlags.None);
120
121 strRetPage = Recv(s, ASCII);
122
123 return strRetPage;
124 }
125
126 protected void btnLogin_Click(object sender, EventArgs e)
127 {
128 string u = t你好s.txtUserName.Text.Trim();
129 string p = t你好s.txtPwd.Text.Trim();
130 DateTime st = DateTime.Now;
131
132 //淘宝登录需要post的数值串
133 string sendData = "TPL_username=" u "&TPL_password=" Server.UrlEncode(p) "&actionForStable=enable_post_user_action&action=Authenticator&mi_uid=&mcheck=&TPL_redirect_url=http://item.taobao.com/auction/item_detail-0db1-3036113cf5455bd74047f1a581ba4be7.htm&_oooo_=http://item.taobao.com/auction/item_detail-0db1-3036113cf5455bd74047f1a581ba4be7.htm&event_submit_do_login=anyt你好ng&abtest=&pstrong=3&from=&yparam=&done=&loginType=3&tid=&support=000001&CtrlVersion=1,0,0,7";
134
135 string s = GetHtml("login.taobao.com", "/member/login.jhtml", "post", sendData, "");
136 Session["Cookies"] = GetCookies(s); //从归回的源码中提取cookies,抓取登录后的页面需要附上该cookies
137
138 }
139 protected void btnBuy_Click(object sender, EventArgs e)
140 {
141 string strURL = t你好s.txtURL.Text.Trim();
142 getServerAndPath(strURL);
143
144 string s = GetHtml(strServer, strPath, "get", "", Session["Cookies"].ToString());
145 //Response.Write(s);
146 if (s.IndexOf("当即采办") > 0)
147 {
148 string item_id = strURL.Split('-')[2].Split('.')[0].ToString();
149 string x_id = strURL.Split('-')[1].ToString();
150
151 s = GetHtml("buy.taobao.com", "/auction/buy.htm?from=itemDetail&item_id=" item_id "&x_id=" x_id, "get", "", Session["Cookies"].ToString());
152 //Response.Write(s);
153 using (StreamWriter sw = new StreamWriter(Server.MapPath("debug1.html")))
154 {
155 sw.Write(s);
156 }
157
158 if (s.IndexOf("明确承认提交处理订单") > 0)
159 {
160 Session["Cookies"] = GetCookies(s);
161 string postData = getPostData(s);
162 string r = GetHtml("buy.taobao.com", "/auction/buy_now.htm", "post", postData, Session["Cookies"].ToString());
163 if (r.IndexOf("302") > 0)
164 {
165 using (StreamWriter sw = new StreamWriter(Server.MapPath("debug2.html")))
166 {
167 sw.Write(r);
168 }
169 }
170 else
171 {
172 ////
173 }
174 using (StreamWriter sw = new StreamWriter(Server.MapPath("debug2.html")))
175 {
176 sw.Write(r);
177 }
178 }
179 }
180 else if (s.IndexOf("btn-wait") > 0)//该宝物还处于按时上架的状况
181 {
182
183 }
184
185 }
186
187
188 /// <summary>
189 /// 从归回的源代码中提取cookies
190 /// </summary>
191 /// <param name="s"></param>
192 /// <returns></returns>
193 private string GetCookies(string s)
194 {
195 StringBuilder sbCookies = new StringBuilder();
196
197 string[] arr = s.Split(new string[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);
198 foreach (string str in arr)
199 {
200 if (str.StartsWith("Set-Cookie: "))
201 {
202 int intStart = str.IndexOf(";");
203 string strCookie = str.Substring(12, intStart - 11);
204 sbCookies.Append(strCookie);
205 }
206 }
207 return sbCookies.ToString();
208 }
209
210 private string GetLocationURL(string s)
211 {
212
213 string RtnString = string.Empty;
214 StringBuilder sbCookies = new StringBuilder();
215
216 string[] arr = s.Split(new string[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);
217 foreach (string str in arr)
218 {
219 if (str.StartsWith("Location: "))
220 {
221 RtnString = str.Substring(11, str.Length - 11);
222 }
223 }
224 return RtnString;
225 }
226
227
228
229 private void getServerAndPath(string strURL)
230 {
231 if (strURL != "" && strURL.IndexOf("/") > 0)
232 {
233 int SlashPos = strURL.Substring(7).IndexOf("/");
234 strServer = strURL.Substring(7, SlashPos);
235 strPath = strURL.Substring(SlashPos 7);
236 }
237 else
238 return;
239 }
240
241
242
243 /// <summary>
244 /// 从最后明确承认采办页面的源代码中提取表奇数值的数值
245 /// </summary>
246 /// <param name="html"></param>
247 /// <returns></returns>
248 private string getPostData(string html)
249 {
250 string postStr = "";
251 string pat = "<input .*?name.{0,1}=.{0,1}\"(.*?)\".*? value.{0,1}=\"(.*?)\".*?>";
252 Regex regex = new Regex(pat, RegexOptions.Multiline | RegexOptions.IgnoreCase);
253 MatchCollection mcollection = regex.Matches(html);
254
255 foreach (Match m in mcollection)
256 {
257 GroupCollection gcollection = m.Groups;
258 if (m.ToString().IndexOf("_fma.b._0.s") > 0) { continue; }
259 if (m.ToString().IndexOf("_fma.b._0.c") > 0) { continue; }
260 if (m.ToString().IndexOf("isCheckCode") > 0 && gcollection[2].Value.ToLower() == "true")
261 {
262 //isCheckCode = true;
263 }
264 postStr = gcollection[1].Value; postStr = "=";
265 postStr = Server.UrlEncode(gcollection[2].Value);
266 postStr = "&";
267 }
268 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";
269 postStr = postStr.Replace("quantity=0", "quantity=1").Replace("_fma.b._0.d=您没必要重复省-市-区信息;至少五个字", "_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=139XXXX");
270 postStr = "&_fma.b._0.s=2";
271 //postStr = Server.UrlEncode(postStr);
272
273 return postStr;
274 }
275 }
个人签名
-------------------------------------
发表评论
-
java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream
2013-05-10 16:10 824C:\Program Files (x86)\MyEc ... -
读取word pdf中的文字 用第三方组件 pdfbox 和 poi
2013-03-20 23:51 1011读取word pdf中的文字 用第三方组件 pdfbox 和 ... -
非常好使的FileUtil 类
2013-03-09 12:45 1008package com.zqk.util; imp ... -
eclipse 3.4.1 导入项目后 Target runtime Apache Tomcat v5.0 is not defi...
2012-05-29 09:27 1808下载最新版本eclipse3.4.1后,导入以前的项目,报 ... -
MyEclipse 6.5 序列号生成器
2011-06-10 09:47 1672import java.awt.event.ActionEve ... -
字节序 整形与字节数组转换
2010-12-15 13:43 2348Big Endian and Little Endian ... -
JPEG文件数据结构以及将位图保存为JPG的代码 转2
2010-12-02 13:31 2858三、实例分析 用系统自带的画图程序画一个32×24的红色方块 ... -
JPEG文件数据结构以及将位图保存为JPG的代码 转1
2010-12-02 13:30 3056JPEG文件数据结构以及将位图保存为JPG的代码一、简 ... -
Nginx+resin调优文档
2010-11-18 17:02 2307http://blog.liuts.com/post/204/ ... -
分析 Tomcat startup.bat 启动脚本
2010-11-03 14:53 3228分析 Tomcat startup.bat 启 ... -
Tomcat配置优化 转
2010-11-03 14:51 10741.精简Tomcat和配置文件1.1 .删除不需要的管理应用和 ... -
URLConnection 读取字节流
2010-10-27 13:15 32692008-11-08 山寨Wget实现又惹事了 h ... -
字节到整形的转换
2010-10-27 12:47 1428public byte[] intToByte(int i) ... -
Gif 文件格式分析
2010-10-27 11:45 1069GIF文档ˉˉˉˉˉˉ 1.概述~~~~~~~~ ... -
JPG文件格式解码图片高度和宽度的分析
2010-10-27 10:34 986113. 简单说一下 JPG 文件的解码 ---------- ... -
CSS制作多种链接样式
2010-10-15 11:54 1122多种链接样式制作方法 ... -
虚拟主机上给一个网卡设置多个IP地址
2010-10-13 17:22 1892配置虚拟主机时有一种方式是在一块网卡上绑定多个IP,操作如下: ... -
linux下一个网卡配置多个IP
2010-10-13 17:21 967文本控制台下面有netconfig,还有ifconfig工具, ... -
[转载]linux中sar的详细使用
2010-10-13 17:06 886在使用UNIX操作系统的过程中,我们常常 ... -
Linux中sar命令
2010-10-13 17:05 996Linux中sar命令 sar这东 ...
相关推荐
在"C#淘宝秒杀源码"这个项目中,我们可以学习到以下几个关键知识点: 1. **并发处理**:淘宝秒杀涉及到大量的用户同时进行操作,因此源码中可能会采用多线程或异步处理技术来处理并发请求,如`Task`、`async/await`...
C#+Socket+实现的淘宝秒杀器(抢拍器) 源码
C#仓库管理系统源码 C#仓库管理系统源码 C#仓库管理系统源码 C#仓库管理系统源码 C#仓库管理系统源码 C#仓库管理系统源码 C#仓库管理系统源码 C#仓库管理系统源码 C#仓库管理系统源码 C#仓库管理...
【标签】进一步强调了关键词,包括"C#秒杀"、"C#秒杀器"、"源码"、"秒杀源代码"以及"C#秒杀器代码"。这些标签提示我们,源码可能涵盖了秒杀系统的核心功能,如抢购逻辑、库存管理、防刷机制、公平性设计等,并且全部...
内涵各种基本功能的源码,适合新手使用,真实实例
连连看c#源码连连看c#源码连连看c#源码连连看c#源码连连看c#源码连连看c#源码连连看c#源码连连看c#源码连连看c#源码连连看c#源码连连看c#源码连连看c#源码连连看c#源码连连看c#源码连连看c#源码连连看c#源码连连看c#...
标题中的“C#淘宝登录提取订单二次开发源码”表明这是一个使用C#编程语言开发的项目,其主要目的是为了从淘宝平台抓取商家的订单信息,特别是那些已经成功收货的订单。这样的工具对于需要自动化处理订单数据的电商...
以下将详细解释该C#秒杀程序源码中的关键知识点。 首先,源码中引入了多个命名空间,如`System.Net`、`System.Net.Sockets`和`System.Threading`等,这些命名空间包含了用于网络通信和线程操作的关键类。例如,`...
这是一款有关淘宝API接口开发示例源码,主要实现了通过淘宝APPkey,SeesionToken,AppScrent 三个参数获取淘宝接口的权限,感兴趣的朋友可以下载研究一下。 二、功能介绍 该源码的功能包含:获取店铺名称,获取...
【C#源码大集合】是一个综合性的资源库,涵盖了C#编程语言在多个领域的应用实例和源代码。这个集合不仅适用于初学者学习C#的基础语法和编程技巧,也对有经验的开发者提供了深入理解高级特性和技术挑战的宝贵资料。...
一、源码介绍 wpf prism sample 爬虫,淘宝MM,欢迎下载 二、注意事项 开发环境为Visual Studio 2017,无数据库,使用.net 4.5开发。
五、C#源码解析 网络调试助手的源码包含客户端和服务端的实现,以及用户界面的交互逻辑。通过阅读和学习这些源码,开发者可以深入理解TCP通信的实现细节,提升网络编程技能。 总之,网络调试助手借助C#的强大功能...
XMLib 动作游戏开发套件C#源码.zipXMLib 动作游戏开发套件C#源码.zipXMLib 动作游戏开发套件C#源码.zipXMLib 动作游戏开发套件C#源码.zipXMLib 动作游戏开发套件C#源码.zipXMLib 动作游戏开发套件C#源码.zipXMLib ...
本资源提供的“BN093-PACS C#源码”是一个基于C#编程语言实现的PACS系统开发套件,无密码保护,方便开发者研究和学习。 PACS系统的核心组件通常包括以下几个部分: 1. **影像采集**:通过各种医学成像设备(如CT、...
在本项目中,"RFID读写C#源码"是针对Symbol公司的高端设备MC9000和MC9090进行开发的应用案例,提供了C#语言编写的源代码,对于理解RFID技术的运用以及在实际项目中的实现具有很高的参考价值。 首先,RFID系统通常由...
【C# MES系统源码详解】 MES(Manufacturing Execution System,制造执行系统)是现代工业生产中的关键组成部分,主要用于管理工厂的生产流程,提供实时的数据采集、监控、控制以及报告功能。C#作为.NET框架的主要...
在本项目中,我们讨论的是一个使用C#编程语言实现的计算器源码。C#是一种由微软开发的面向对象的编程语言,广泛应用于Windows桌面应用、游戏开发、Web应用以及移动应用等领域。这个计算器源码提供了对基本算术运算的...
在这个"基于MQTT协议的C#版客户端源码"中,开发者已经完成了对MQTT协议的C#实现,这个源码工具可以作为一个类库直接集成到你的项目中。以下是一些关键知识点: 1. **MQTT协议原理**:MQTT基于发布/订阅模型,其中...
一个完整的工程项目WEB管理系统,项目源码采用三层构架,开发工具用VS2013以上版本,数据库建议用SQLServer2008R2及以上版本,项目里面的功能需求及流程有点复杂,虽然项目开发时间有点早,但整体设计思路及功能实现...