需求:
最近在浪点买了个虚拟主机,建了个小网站。想要通过分析apache log来得到来访着的信息,比如地理位置(具体到省份,这个是google analytics 没法提供的。)
实现:
代码及相关文件(其中ip数据库文件QQWry.Dat较大)
svn checkout https://xiaojaylib.googlecode.com/svn/trunk/alog alog
1 apachelogs.py 关门放google,找到几个相关python module,这个的比较好用。 http://www.coolsnap.net/kevin/?p=7。
主要是从log 每一行用正则表达式提取信息,以class ApacheLogLine的数据结构;
然后提供了个iterator,供我们写自己脚本分析。
2 qqip.py
从python-cn Google group上找到的qq ip库查询脚本 http://groups.google.com/group/python-cn/browse_thread/thread/aca85f87a923c2a8/
以及ip数据库文件QQWry.Dat
3 where.py 自己写的
用法:python where.py demo_log
输出项:日期 时间 访问者省份 下载数据量
日期
效果
见首图