自从2011-10-21开始,QQ邮箱的登录界面给更改了之后(变成了类似gmail的新版界面那样了。。。腾讯真的copy到极点了。。),就不能用webmailnotier收取QQ邮件了。

曾经到官方论坛那边提了下,但是没有得到回复,也许官方的开发人员都忙于工作吧。。。也没有做出相应的更新。。。今天在Mozilla社区看到了一个高手修改的webmailnotier for QQ mail的脚本,拿来用了一下,不错,可用!用法在下面说明,先给出JS代码,代码如下:

/**********************************************************
QQ
**********************************************************/
var name="QQ";
var ver="2011-10-31";

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+).*?<\/b>/);
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 post=this.getForm(aData,"loginform");
post=post.replace("&uin=","");
var ar=this.user.split("@");
this.stage=ST_LOGIN;
this.getHtml(this.loginData[LOGIN_URL],
"&pwd="+encodeURIComponent(this.password)
+"&uin="+encodeURIComponent(ar[0])
+"&aliastype=%40"+encodeURIComponent(ar[1]))+"&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);
};

使用方法:

*使用过以前的wenmailnotier官方提供的QQmail收取脚本的同学:把这段代码保存为QQ.js,在firefox配置目录下面会有个wmn目录(不清楚位置的同学可以搜索一下,也可以参考文章《火狐的用户归档(Profile)目录》),替换这个wmn目录下的QQ.js后重启火狐就可以了。

*对于那些没有使用过wenmailnotier官方提供的QQmail收取脚本的同学,可以打开在webmailnotier的选项——脚本——添加,添加上这段QQ脚本(按照下图的箭头的顺序点就可以了),然后就可以添加上你的QQ邮箱了。

失效了好几天的webmailnotier帮忙收QQ邮件,现在一打开QQ邮箱,都快炸了。还是习惯了firefox的来邮提醒~~谢谢whknnn同学!

藏剑山庄原创文章,未经允许,禁止转载!

原文链接:http://blog.yanwen.org/archives/807.html