怎么样编程实现统计自己每天花在各个网站和软件如微博,google以及QQ等上面的时间?
有这个想法很久了但是毫无思路,有没有谁指点一下提供一些思路之类的,编程语言不限,可以慢慢学,只是对这个功能有兴趣,不过跟操作系统有一定相关性,是不是用C#会好实现点。
平和島臨也
11 years, 3 months ago
Answers
问题稍微有点大啊 :)
我只说和网站有关的, 我的想法是写一个浏览器插件(我用的Firefox).
1. 打开https://builder.addons.mozilla.org/;
2. 创建插件, 实现记录打开和离开google.com的时间;
main.js:
var pageMod = require("page-mod");
var self=require('self');
pageMod.PageMod({
include: "https://www.google.com/*",
contentScriptFile: self.data.url('unload.js')
});
unload.js
var log=function(str){
console.log(str+":"+ new Date().getTime());
};
log('google:begin');
window.onbeforeunload = function() {
log('google:end');
};
window.onblur = function() {
log('google:blur');
};
window.onfocus = function() {
log('google:focus');
};
这样打开或离开google, Firefox console log里会有:
info: testpage: google:begin:1365735674966
info: testpage: google:end:1365735684278
-
下面我们io/text-streams -> TextWriter把上面的时间写入log 文件里.
logger.jsvar file=require('file'),
writer=file.open(file.join('c:','xxx_log.txt'),'w'),
log=function(msg){
writer.write(msg+"\n");
};
exports.log=log;
require('timers').setInterval(function(){writer.flush();}, 2000);用logger.js里的log方法替换掉unload.js里的log方法;
- 这样你读log可以得到花在google上的时间. 定时一个脚本每天晚上从log里做统计.
我有一个大阴谋
answered 11 years, 3 months ago