多线程
Util.println("此地无货");
运行前需要修改几个地方:
1.环境变量:chrome 加入浏览器变量,以便调用。。或者自己修改源代码用其它方式打开。
2.活动中每个产品的价格信息需要设置。这个比较不好,必须修改源代码。
修改的地方在filter()这个函数里。
3.另外一个需要修改的地方是
hasStore(String skuidkey)
return urls;
}
return true;
}
@Override
changeCart(true);djdarea.stockInfoDom.html("<strong>在途</strong>" (array[4]=="1"?",该区域" (array[3]=="0"?"不":"") "支持货到付款":"") cashdesc);
String[] str = string.split(":");
hm.put(str[0], str[1]);
}
HttpEntity entity = response.getEntity();
doc = Jsoup.parse(entity.getContent(), "utf-8", "");
//????
EntityUtils.consume(entity);
//????
httpClient.getConnectionManager().shutdown();
//这个是一个计数器(不太会用,线程这方面一直感觉是比较复杂的)
HashMap<String, String> hm = parseProduct(down(sb.toString()));
//???????????????
filter(hm, openUrl.toString()); //????,????????????
}
}
try {
if (parseStore(down(address))) {
hasStore = true;
}
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
import org.jsoup.Jsoup;
/**
* ??????
* @param hm ???????
* @param url ????
*/
public void filter(HashMap<String, String> hm, String url) { //url??????
// view.Util.oenCMD.openWinExe(null,url);
// ???????????
break;
}
}
public void regist(Thread t) {
synchronized (runningThreads) {
runningThreads.add(t);
}
}
String skuidkey = parseSkuidkey(url);
float price=0.0f;//商品价格
/**
* ??skuidkey,??????????
* @param url
* @return
*/
public static String parseSkuidkey(String url) {
Document doc = null;
return false;
}
public class ThreadOne extends Thread {
private static List<Thread> runningThreads = new ArrayList<Thread>();
java.util.concurrent.CountDownLatch c;
ArrayList al;//记录秒杀产品页面
public float getDiscount() {
return discount;
}
1.每隔一段时间(比如1分钟)在京东手机每日一秒杀页面提取产品(手机)链接。
http://sale.360buy.com/act/8VTHFGr10CjMDyZ.html#01
2.根据提取到得产品链接给后台发送数据,以便获取产品价格,描述,折扣,库存(是否有货)等信息。
3.根据得到的信息,进行判断。
/**
* ??unicode???????????????????
* @param it: \u6a5d
* @return
*/
public static String unicodeDecode(String it) { //????????????????
Util.println(it);
} */
Util.println("此地现货");
//几个bean方法
//?????????
return;
}
String[] store = docc.split("-");
while (mc.find()) {
sb = new StringBuffer();
mc.appendReplacement(sba,
sb.append(
(char) Integer.parseInt((mc.group(1).substring(2)), 16))
.toString());
}
// 打印结束标记
return sba.toString();
}
/**
* 查看库存信息
return false;
} else if (store[1].equals("33")