想要采集一些网站的链接地址,必须的用正则和js去提取!类似于以下的函数!ar urls=new Array();
var headers=new Array();
var store_times=new Array();
var imgstrs=new Array();
var i = 0;function radar_link()
{
this.source="";
this.script="";
}
function TRS_Document_Link(urlname,urltitle,content)
{
var rval = new radar_link();
var begin=content.indexOf("var imgstrs=new Array();"); if(begin!=-1)
{
var end=content.indexOf("showNews(0);",begin);
if(end!=-1)
{
rval.script=content.substr(begin,end-begin);
}
} return rval;}
function ReplaceString(s,OldPattern,NewPattern)
{
var i;
var s2 = s;
var len = OldPattern.length;
while(s2.indexOf(OldPattern)>0)
{
i = s2.indexOf(OldPattern);
s2 = s2.substring(0, i) + NewPattern + s2.substring(i + len, s2.length);
}
return s2;
}
function showNews(start_num)
{
var rval = new radar_link();
var pagecount=20;
var formatstr="<p style='margin-top:7px;margin-bottom:7px;'><img src=_HEAD_IMAGE_ width=3 height=6> <a href=_URL_>_TITLE_</a><font color=#808080 size=1>_TIME_</font>_IMAGE_</p>\r\n";
var LastPage_left="<<";
var LastPage="上一页";
var LastPage_right=" ";
var NextPage_left="";
var NextPage="下一页";
var NextPage_right=">>"; var j=0;
var end_num=0;
var newshtml="";
var pagehtml="";
var str=""; if(start_num+pagecount>headers.length)
end_num=headers.length-1;
else
end_num=start_num+pagecount-1;
for(j=start_num;j<=end_num;j++)
{
str=formatstr;
str=ReplaceString(str,"_URL_",urls[j]);
str=ReplaceString(str,"_TITLE_",headers[j]);
str=ReplaceString(str,"_TIME_",store_times[j]);
str=ReplaceString(str,"_HEAD_IMAGE_","");
str=ReplaceString(str,"_IMAGE_","");
newshtml=newshtml+str;
}
if(start_num>0)
pagehtml=LastPage_left+"<a href=# onclick='javascript:showNews(" + (start_num - pagecount) + ");return false;' class=a1>"+LastPage+"</a>"+LastPage_right;
if(end_num<headers.length-1)
pagehtml=pagehtml + NextPage_left+ "<a href=# onclick='javascript:showNews(" + (start_num + pagecount) + ");return false;' class=a1>"+NextPage+"</a>"+NextPage_right;
rval.source = newshtml+pagehtml;
return rval;
}
var headers=new Array();
var store_times=new Array();
var imgstrs=new Array();
var i = 0;function radar_link()
{
this.source="";
this.script="";
}
function TRS_Document_Link(urlname,urltitle,content)
{
var rval = new radar_link();
var begin=content.indexOf("var imgstrs=new Array();"); if(begin!=-1)
{
var end=content.indexOf("showNews(0);",begin);
if(end!=-1)
{
rval.script=content.substr(begin,end-begin);
}
} return rval;}
function ReplaceString(s,OldPattern,NewPattern)
{
var i;
var s2 = s;
var len = OldPattern.length;
while(s2.indexOf(OldPattern)>0)
{
i = s2.indexOf(OldPattern);
s2 = s2.substring(0, i) + NewPattern + s2.substring(i + len, s2.length);
}
return s2;
}
function showNews(start_num)
{
var rval = new radar_link();
var pagecount=20;
var formatstr="<p style='margin-top:7px;margin-bottom:7px;'><img src=_HEAD_IMAGE_ width=3 height=6> <a href=_URL_>_TITLE_</a><font color=#808080 size=1>_TIME_</font>_IMAGE_</p>\r\n";
var LastPage_left="<<";
var LastPage="上一页";
var LastPage_right=" ";
var NextPage_left="";
var NextPage="下一页";
var NextPage_right=">>"; var j=0;
var end_num=0;
var newshtml="";
var pagehtml="";
var str=""; if(start_num+pagecount>headers.length)
end_num=headers.length-1;
else
end_num=start_num+pagecount-1;
for(j=start_num;j<=end_num;j++)
{
str=formatstr;
str=ReplaceString(str,"_URL_",urls[j]);
str=ReplaceString(str,"_TITLE_",headers[j]);
str=ReplaceString(str,"_TIME_",store_times[j]);
str=ReplaceString(str,"_HEAD_IMAGE_","");
str=ReplaceString(str,"_IMAGE_","");
newshtml=newshtml+str;
}
if(start_num>0)
pagehtml=LastPage_left+"<a href=# onclick='javascript:showNews(" + (start_num - pagecount) + ");return false;' class=a1>"+LastPage+"</a>"+LastPage_right;
if(end_num<headers.length-1)
pagehtml=pagehtml + NextPage_left+ "<a href=# onclick='javascript:showNews(" + (start_num + pagecount) + ");return false;' class=a1>"+NextPage+"</a>"+NextPage_right;
rval.source = newshtml+pagehtml;
return rval;
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货