由于某些原因, 重装了firefox, 下了webmail notier, 结果QQ邮箱死活不能收取和登录, 于是看了一下, 发现新版的QQ邮箱把登录from的id给改了, 于是修改了一下原来的脚本, 测试mail.qq.com可用. foxmail和vip.qq.com没有测试.

[code lang="js"]
var name="QQ";
var ver="2011-11-03";

function init(){
this.name="QQ";
this.initStage=ST_PRE;
this.dataURL="http://mail.qq.com/";
this.loginData=["https://mail.qq.com/cgi-bin/login"];
this.mailURL="http://mail.qq.com/";
}

function getCount(aData){
var fnd=aData.match(/\u90ae\u4ef6\uff1a<b>.*?(\d+).*?&lt;\/b&gt;/);
if(fnd){
return fnd[1];
}else{
return -1;
}
}

function process(aHttpChannel, aData) {
switch(this.stage){
case ST_PRE:
this.getHtml("https://mail.qq.com/cgi-bin/loginpage");
return false;
case ST_PRE_RES:
var ar=this.user.split("@");
this.stage=ST_LOGIN;
this.getHtml(this.loginData[LOGIN_URL],
"&amp;pwd="+encodeURIComponent(this.password)
+"&amp;uin="+encodeURIComponent(ar[0])
+"&amp;aliastype=%40"+encodeURIComponent(ar[1]))+"&amp;btlogin=+%E7%99%BB%E5%BD%95+";
return false;
case ST_LOGIN_RES:
var fnd=aData.match(/urlHead="(\S+?)"/);
if(fnd){
var url=fnd[1];
fnd=aData.match(/urlHead\s*?\+\s*?"(\S+?)"/);
if(fnd){
url+=fnd[1];
this.dataURL=url.replace("frame_html","today");
fnd=aData.match(/targetUrl\+="(\S+?)"/);
if(fnd){
this.mailURL=url+fnd[1];
break;
}
}
}
return true;
}
return this.baseProcess(aHttpChannel, aData);
};
[/code]