说明

本实例能够监控聚划算的抢购按钮,在聚划算整点聚的时间到达时自动弹开页面(URL自己定义)。

可以自定义监控持续分钟数,同时还可以通过多线程加快刷新速度。

源码

package com.itechzero.pricemonitor;import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.URI;
import java.net.URL;
import java.net.URLConnection;
import java.text.SimpleDateFormat;
import java.util.Date;/*** PriceMonitor.java* * @author Techzero* @Email techzero@163.com* @Time 2014-5-21 下午1:24:30*/
class MyThread extends Thread {public void run() {try {// 此处参数为监控持续分钟数PriceMonitor.monitorButton(10);} catch (Exception e) {e.printStackTrace();}}
};public class PriceMonitor {// 监控的商品URLprivate static String URL = "http://detail.ju.taobao.com/home.htm?spm=608.2214381.3.1.AdPEjn&item_id=38260927591&id=10000002781939";// 监视按钮public static void monitorButton(int lastMinute) {int nowMinute = Integer.parseInt(new SimpleDateFormat("mm").format(new Date()));int endMinute = Integer.parseInt(new SimpleDateFormat("mm").format(new Date())) + lastMinute;while (nowMinute < endMinute) {nowMinute = Integer.parseInt(new SimpleDateFormat("mm").format(new Date()));String result[] = getCurrentButtonAndForm(URL, "gb2312").split(",");// 当前按钮状态String currentButton = result[0];// 马上抢 表单//String form = result[1];String nowTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());System.out.println(nowTime + " - 现在按钮是 " + currentButton);if (currentButton == "马上抢" || currentButton.equals("马上抢") || currentButton == "还有机会" || currentButton.equals("还有机会")) {System.out.println("赶紧下单!");try {java.awt.Desktop.getDesktop().browse(new URI(URL));} catch (Exception e) {e.printStackTrace();}//doPost(form);break;} else if (currentButton == "卖光了" || currentButton.equals("卖光了") || currentButton.equals("已结束") || currentButton.equals("已结束")) {System.out.println("下次再试吧!");break;} else {System.out.println("还没开始呢,再等等吧!");}}}// 获取当前按钮状态public static String getCurrentButtonAndForm(String url, String encoding) {if (url == null || "".equals(url.trim()))return null;String buttonState = "";StringBuffer content = new StringBuffer();boolean formFlag = false;try {// 新建URL对象URL u = new URL(url);InputStream is = new BufferedInputStream(u.openStream());InputStreamReader theHTML = new InputStreamReader(is, encoding != null ? encoding : "gb2312");BufferedReader br = new BufferedReader(theHTML);String s = "";while ((s = br.readLine()) != null) {if (s.indexOf("<input type=\"submit\" class=\"buyaction J_BuySubmit\"  title=\"马上抢\" value=\"马上抢\"/>") != -1) {buttonState = "马上抢";} else if (s.indexOf("<a href=\"#\" class=\"extra  notice J_BuyButtonSub\">开团提醒</a>") != -1) {buttonState = "开团提醒";} else if (s.indexOf("<div class=\"main-box chance \">") != -1) {buttonState = "还有机会";} else if (s.indexOf("<span class=\"out floatright\">卖光了...</span>") != -1) {buttonState = "卖光了";} else if (s.indexOf("<span class=\"out floatright\">已结束...</span>") != -1) {buttonState = "已结束";}if (s.indexOf("<form class=\"J_BuySubForm\" data-ccb=\"0\" data-ques=\"0\" action") != -1) {content.append(s + "\r\n");formFlag = true;}if (formFlag == true) {if (s.indexOf("<input name=\'_tb_token_\' type=\'hidden\' value") != -1) {content.append(s + "\r\n");}if (s.indexOf("<input type=\"hidden\" name=\"_input_charset\" value") != -1) {content.append(s + "\r\n");}if (s.indexOf("<input type=\"hidden\" name=\"itemId\" value") != -1) {content.append(s + "\r\n");}if (s.indexOf("<input type=\"hidden\" name=\"id\" value") != -1) {content.append(s + "\r\n");}if (s.indexOf("<input type=\"hidden\" name=\"tgType\" value") != -1) {content.append(s + "\r\n");}if (s.indexOf("<input type=\"submit\" class=\"buyaction J_BuySubmit\"") != -1) {content.append(s + "\r\n");}if (s.indexOf("</form>") != -1) {content.append(s + "\r\n");}}if (s.indexOf("<div class=\"time-banner\">") != -1) {break;}}br.close();} catch (Exception e) {System.err.println(e);return "Open URL Error";}return buttonState + "," + content;}// 提交表单public static String doPost(String form) {StringBuffer content = new StringBuffer();try {URLConnection connection = new URL(URL).openConnection();connection.setDoOutput(true);OutputStreamWriter os = new OutputStreamWriter(connection.getOutputStream(), "UTF-8");os.write(form);os.flush();os.close();InputStream is = connection.getInputStream();InputStreamReader theHTML = new InputStreamReader(is);BufferedReader br = new BufferedReader(theHTML);String s = "";while ((s = br.readLine()) != null) {content.append(s + "\r\n");}} catch (Exception e) {e.printStackTrace();}// 返回提交表单后返回的页面内容return content.toString();}// 登录public static void doLogin(String username, String password) {String form = "<form id=\"J_StaticForm\" action=\"https://login.taobao.com/member/login.jhtml\" method=\"post\" autocomplete=\"on\"><input type=\"text\" name=\"TPL_username\" id=\"TPL_username_1\" value=\"" + username + "\"><input type=\"password\" name=\"TPL_password\" id=\"TPL_password_1\" value=\"" + password + "\"><input type=\"hidden\" id=\"J_TPL_redirect_url\" name=\"TPL_redirect_url\" value=\"http://www.taobao.com/?spm=a2107.1.1000340.1.AL2Mpn\"><button type=\"submit\" id=\"J_SubmitStatic\">登 录</button></form>";doPost(form);}public static void main(String[] args) {//doLogin();// new MyThread().start();// new MyThread().start();// new MyThread().start();// new MyThread().start();// new MyThread().start();// new MyThread().start();// new MyThread().start();new MyThread().start();}
}

Java 实现 淘宝秒杀 聚划算 自动提醒 源码相关推荐

  1. Python 实现 淘宝秒杀 聚划算 自动提醒 源码

    说明 本实例能够监控聚划算的抢购按钮,在聚划算整点聚的时间到达时发出提醒(音频文件自己定义位置)并自动弹开页面(URL自己定义). 同时还可以通过命令行参数自定义刷新间隔时间(默认0.1s)和监控持续 ...

  2. Java 实现 淘宝秒杀 聚划算 自己主动提醒 源代码

    说明 本实例可以监控聚划算的抢购button,在聚划算整点聚的时间到达时自己主动弹开页面(URL自定义). 能够自己定义监控持续分钟数,同一时候还能够通过多线程加快刷新速度. 源代码 package ...

  3. HTML5响应式手机模板:电商网站设计——仿淘宝手机app界面模板源码 HTML+CSS+JavaScript...

    HTML5响应式手机模板:电商网站设计--仿淘宝手机app界面模板源码 HTML+CSS+JavaScript 手机电商模板 手机网站模板 企业手机网站模板 手机网站模板 手机模板 响应式手机网站 h ...

  4. HTML5响应式手机模板:电商网站设计——仿淘宝手机app界面模板源码 HTML+CSS+JavaScript

    HTML5响应式手机模板:电商网站设计--仿淘宝手机app界面模板源码 HTML+CSS+JavaScript 手机电商模板 手机网站模板 企业手机网站模板 手机网站模板 手机模板 响应式手机网站 h ...

  5. 精仿《礼物网》淘宝客整站模板源码/帝国CMS7.5淘宝客类整站源码

    源码介绍 帝国CMS仿<仿礼物网>淘宝客整站模板源码,帝国CMS7.5淘宝客类整站源码,淘宝客帝国CMS模板.随着腾讯微信淘宝生态的打通,淘宝客链接可直接在微信,QQ分享,我们觉得有利淘宝 ...

  6. java毕业设计“臻宝”书画竞拍系统mybatis+源码+调试部署+系统+数据库+lw

    java毕业设计"臻宝"书画竞拍系统mybatis+源码+调试部署+系统+数据库+lw java毕业设计"臻宝"书画竞拍系统mybatis+源码+调试部署+系统 ...

  7. 计算机毕业设计Java共享充电宝管理系统演示录像2021(源码+系统+mysql数据库+Lw文档)

    计算机毕业设计Java共享充电宝管理系统演示录像2021(源码+系统+mysql数据库+Lw文档) 计算机毕业设计Java共享充电宝管理系统演示录像2021(源码+系统+mysql数据库+Lw文档) ...

  8. python淘宝cookies抢购_Python实现淘宝秒杀聚划算抢购自动提醒源码

    说明 本实例能够监控聚划算的抢购按钮,在聚划算整点聚的时间到达时发出提醒(音频文件自己定义位置)并自动弹开页面(URL自己定义). 同时还可以通过命令行参数自定义刷新间隔时间(默认0.1s)和监控持续 ...

  9. 如何用python编写抢购程序源码_Python实现淘宝秒杀聚划算抢购自动提醒源码

    说明 本实例能够监控聚划算的抢购按钮,在聚划算整点聚的时间到达时发出提醒(音频文件自己定义位置)并自动弹开页面(URL自己定义). 同时还可以通过命令行参数自定义刷新间隔时间(默认0.1s)和监控持续 ...

最新文章

  1. boost::hana::take_front用法的测试程序
  2. Ubuntu: ldconfig(解决*.so不是符号连接)
  3. 二级c语言光盘,二级c语言(光盘).doc
  4. LeetCode 140. 单词拆分 II(DP+回溯)
  5. 密钥--公钥、私钥方式
  6. 绝对不能错过!计算机视觉Polygon Mesh Processing读书笔记——3
  7. 【元胞自动机】基于matlab元胞自动机考虑驾驶行为的自动—求解手动驾驶混合交通流问题【含Matlab源码 2060期】
  8. 《编码-隐匿在计算机背后的语言》 —— 读书笔记(三):数字
  9. html中设置背景图片为平铺,html背景图片怎么设置平铺方式
  10. 线上收单和线下收单的区别
  11. IT、TT、TN系统,你真的了解吗?
  12. 大数据开发面试准备——计算机网络
  13. 什么叫做「数据驱动方法」
  14. 基于ZigBee+ESP32+MQTT+EMQX+TomCat+Servlet接口+MySQL+安卓app的物联网课设
  15. 现代化医院PACS/RIS系统概述
  16. 机房专用空调设备的安装
  17. 配制ubuntu - 使用大全整理 (其中有转载内容,如果有您的文章,请与我联系,我将加入你的名称)
  18. Matlab Robotic Toolbox安裝
  19. 计算机软件著作权的保护对象是什么
  20. python制作mcmod_配方教程 - 合成拓展 (Extended Crafting) - MC百科|最大的Minecraft中文MOD百科...

热门文章

  1. 鸿鑫汽车配件进销存管理系统总结
  2. ULua与Unity交互原理
  3. springboot整合佳博打印机打印条码、二维码
  4. 最大公约数、最小公倍数算法思想
  5. Web前端UI框架 JQuery WeUI
  6. SEO—什么是长尾关键词、目标关键词,有什么区别,怎么分辨?
  7. SpringMVC+FastJson 自定义日期转换器
  8. 山东省职业院校技能大赛“H5交互融媒体内容设计与制作”比赛回顾
  9. 谷歌浏览器无法选select_去除谷歌浏览器表单边框特效和select下拉菜单背景
  10. 分页计算总页数算法:总页数=(总数-1)/每页数量+1----总页数=(总数+每页数量-1)/每页数量