迷城网络 - 专注于中小企业Linux运维服务

当前位置: 迷城网络 > 建站程序 >

PinPHP购物分享系统2.2后台批量采集修改实现方法

时间:2019-03-27 10:51来源: 作者: 点击:
因前段时间较忙,所以一直将这开发搁置了。今天看了一下新版的PinPHP,又心血来潮于是写了一下这个批量采集的实现,没想到写了差不多一两小时就实现了,虽然写得比较简单,也算

因前段时间较忙,所以一直将这开发搁置了。今天看了一下新版的PinPHP,又心血来潮于是写了一下这个批量的实现,没想到写了差不多一两小时就实现了,虽然写得比较简单,也算是可以帮助一键采集一个分类。同时非常感谢PinPHP团队开发出

如此好使的开源程序,哈,闲话先不多说,上代码。

PinPHP购物分享系统2.2后台批量采集修改实现方法附源文件:

主要是对一个模板文件作了修改。/PinPHP_V2.21/admin/Tpl/default/items_collect/collect.html

增加了“批量采集当前分类”按钮: 

Copy to ClipboardPinPHP购物分享系统2.2后台批量采集修改实现方法引用的内容:[www.veryhuo.com] <div style="display:inline-block; margin-left:30px; width:650px">
<input type="button" value="批量采集当前分类" id="btnCollectCurrent" style="padding:5px 10px; margin-right:30px;" />
<img src="http://meego123.net/__ROOT__/statics/images/masonry_loading.gif" id="collecting" style="display:none" />
<span id="info"></span>
</div>

JS实现:

Copy to ClipboardPinPHP购物分享系统2.2后台批量采集修改实现方法引用的内容:[www.veryhuo.com] (function($){
//当前
var argArray,str,strSplit,strUrl,collectTimer,nLen,count=0,errCount=0;
$("#btnCollectCurrent").bind("click",function(){
argArray = new Array();
$("#items_cate_list tr").each(function(index, element) {
$(this).children("td").each(function(index, element) {
var aTag = $(this).children("a");
if(aTag.length>0){
var str=$(aTag).attr("href").replace("javascript:collect(","").replace(")","").replace(";","").replace("'","").replace("'","");
var strSplit = str.split(",");
var strUrl = '?page=1&a=taobao_collect_jump&m=items_collect&cate_id='+strSplit[0]+'&keywords='+$.trim(strSplit[1]);
argArray.push(strUrl);
}
});
});

$("#collecting").show();
$("#info").text("采集中...");
nLen = argArray.length;
collectTimer = setInterval(function(){
if(count>=nLen) {
clearInterval(collectTimer);
$("#collecting").hide();
$("#info").text("采集完成");
return;
}

$.ajax({
url:argArray[count],
type:"GET",
dataType:"Html",
async:false,
success:function(){
$("#info").text("采集中...共"+nLen+"个 当前正在执行第"+count+"个采集 失败"+errCount+"个");
count++;
},
error:function(){
errCount++;
count++;
}
});
},1000);
});
})(jQuery);

实现效果:

PinPHP购物分享系统2.2后台批量采集修改实现方法

目前只实现了采集当前选中分页的子类批量采集。

从代码可以看出,也是拼接采集的URL,然后通过Ajax定时请求,这次用了同步采集,测试中发现采用异步时

其中有些分类会采集失败,可能因为请求被中掉。采集间隔设置为1秒,为保证请求完成,并在过多类时,防止阻塞

导致浏览器假死。若要采集多页可修改page参数,暂设定为1页

Copy to ClipboardPinPHP购物分享系统2.2后台批量采集修改实现方法引用的内容:[www.veryhuo.com] var strUrl = '?page=1&a=taobao_collect_jump&m=items_collect&cate_id='+strSplit[0]+'&keywords='+$.trim(strSplit[1]);

PinPHP购物分享系统2.2后台批量采集修改实现方法附源文件:

(责任编辑:迷城网络科技)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容