这种重复劳动还是让程序自动帮你去做吧。当且仅当有新人加入、有好玩的新话题、有人咬钓上钩时,才告诉你——最好是通过即时消息——“打雷啦,下雨啦,快回组里收衣服啊!”这样岂不是很make sense?哈哈。
我在豆瓣上建了一个杭州书虫小组,组里有700来号人,每天组员人数、讨论帖、小组收藏总计的变化次数在20-30次左右,人工反复去查看实在浪费时间。于是就想到利用脚本,实现通过即时消息告知小组页面更新的功能。具体思路是这样的,每隔3分钟用"lynx --source http://www.douban.com/group/hzbookworm/"命令抓取杭州书虫小组页面源码,再用md5sum命令生成MD5校验值,与前次保存的MD5校验值比对,若一致,则不做任何动作,若不一致,则通过python脚本发送Google Talk即时消息给我,通知页面更新。
首先下载Jabber协议的Python库:xmpppy,并在Linux系统里安装:
localhost ~ # wget http://nchc.dl.sourceforge.net/sourceforge/xmpppy/xmpppy-0.4.0.tar.gz localhost ~ # tar xvfz xmpppy-0.4.0.tar.gz localhost ~ # cd xmpppy-0.4.0 localhost xmpppy-0.4.0 # python setup.py install |
然后在你的普通用户目录里存放一个用于发送Google Talk即时消息的Python脚本(需要调用前面下载的xmpppy库):
|
请将代码中的 loginID 改为你的Google帐号ID,password 改为你的Google帐号密码,发送消息改成“打雷啦,下雨啦,快回组里收衣服啊!”

最后用"crontab -e"命令编辑你的用户定时任务,加入一段:
*/3 * * * * ( if [ `lynx --source http://www.douban.com/group/hzbookworm/ | md5sum -c /tmp/md5sum-douban | grep OK | wc -l` != '1' ]; then lynx --source http://www.douban.com/group/hzbookworm/ | md5sum > /tmp/md5sum-douban ; /usr/bin/python /home/hutuworm/douban/sendgoogletalk.py > /dev/null 2>&1 ; fi ) |
大功告成!从此,每当杭州书虫小组有任何风吹草动,我都会即时收到Google Talk跳出来的消息了。



8 评论:
我的方法是
何不连发帖也用机器人代劳了?
这样的话需要机器人一直在线了 呵呵
@jyf 你做了个豆瓣灌水机? Orz
没有
但用python写过一个机器人 可以发命令指示它干一些事 比如加人 发信息给指定的人什么的 另外 发帖到饭否可以 呵呵至于豆瓣 只要没有验证码 应该可以
@jyf 只要不频繁就不会出现验证码,估计很多在豆瓣上贴小广告的都有这种工具了。
这样的话,那工作量并不大,只是不知道如何定义"频繁" 按id的话 那我轮换id就可以避开了 按ip的话 那如何避免误杀局域网内的通过网关上网的用户
@jyf 频繁的定义好像是每分钟每IP超过40次。
那么 如果有个公司 职员是通过网关上网的 正好是it公司 都在豆瓣上注册了 结果导致出现 一分钟每ip发帖超过40 这样的情况 有何补救?
@jyf world wide wait.
发表评论