编辑代码

var maxTryTimes=10;var currentTimes=0;
function craw() {
    if(isNeedLogin()){
        currentTimes=0;
        window.webkit.messageHandlers.login.postMessage("login");
        return;
    }
    if(isEmptyPage()){
        if(currentTimes > maxTryTimes){
            currentTimes = 0;
            var items=[];
            var info={};
            items.push(info);
            var empty_json=JSON.stringify(info);
            window.webkit.messageHandlers.empty.postMessage(empty_json);
            return;
        }else{
            currentTimes++;
        }
    }
    var itemsDiv = document.getElementsByClassName("list");
        var items=[];
        for(var i=0;i < itemsDiv.length;i++){
            var itemDiv = itemsDiv[i];
            var itemHtml = itemDiv.innerHTML;
            if(itemDiv.is_dealled == 1){
                continue;
            }
            var item={};
            if(itemDiv.hasAttribute("data-numid")){
                item["sku"]=itemDiv.getAttribute("data-numid");
            }
            var imgReg = new RegExp("<img.*?src=\"(.*?)\"", "i");
            if(imgReg.test(itemHtml)) {
                item["img"] = "https:"+imgReg.exec(itemHtml)[1];
            }
            var titleReg = new RegExp("<div class=\"text\".*?>(.*?)</div>", "i");
            if(titleReg.test(itemHtml)) {
                item["name"] = titleReg.exec(itemHtml)[1];
            }
            var priceReg = new RegExp("<div class=\"price\".*?>(.*?)</div>", "i");
            if(priceReg.test(itemHtml)) {
                item["price"] = priceReg.exec(itemHtml)[1];
            }
            if(item["sku"]){
                items.push(item);
            }
            itemDiv.is_dealled=1;
        }
        if(items.length > 0){
            currentTimes=0;
        }
        var data_json=JSON.stringify(items);
        window.webkit.messageHandlers.data.postMessage(data_json);
}

function isNeedLogin(){
    var login = document.getElementsByTagName("iframe")[0];
    if(login && login.hasAttribute("src")){
        var src = login.getAttribute("src");
        if(src.search("login.m.taobao.com")) {
            return true;
        }
    }
    if(document.getElementById("login")){
        return true;
    }
    return false;
}

function isEmptyPage(){
    var empty = document.getElementsByClassName("search-empty");
    return (empty.length>0?true:false);
}

function crawNext(){
    window.scrollTo(0, document.documentElement.scrollHeight);
}