我能想到的方法是:
- 测量动作之间的时间。
- 比较帖子的内容(如果它们彼此太相似),或者更好的是,只比较发布的链接。
- 检查用户活跃的一段时间内的分布(如果用户活跃,比如每小时发布一次,持续一周,那么我们这里要么有超人,要么有机器人)。
- 预计会有一些特殊活动:就像在 stackoverflow 中一样,我希望用户按下他们的用户名链接(顶部中间)来查看他们的新答案、评论、问题等。
- (由 chakrit 添加)帖子中的链接数。
- 不是启发式的。使用一些异步 JS 进行用户登录。(只是让机器人程序员的生活变得更加艰难)。
- (由 Alekc 添加)不是启发式的。用户代理值。
- 而且,我怎么会忘记 Google 的方法(Will Hartung 提到过)。让用户能够将某人标记为垃圾邮件,足够的垃圾邮件投票意味着这是一个垃圾邮件用户。(计算什么是足够的用户,是这里的工作)。
还有什么想法吗?