我已经看过最受欢迎的Django热门计数器解决方案,它们似乎都没有解决垃圾邮件刷新按钮的问题.
我是否真的必须记录每个访问者的IP,以防止他们通过垃圾邮件刷新按钮(或编写一个快速而脏的脚本来为他们执行)来人为地提高页面查看次数?
现在,您可以使用以下几行Python代码来扩充您的视图计数.哪个太少,你真的不需要编写脚本,你只需将它输入到交互式会话中:
from urllib import urlopen
num_of_times_to_hit_page = 100
url_of_the_page = "http://example.com"
for x in range(num_of_times_to_hit_page):
urlopen(url_of_the_page)
Run Code Online (Sandbox Code Playgroud)
对我来说,当你需要在每个页面视图上对数据库进行一堆写操作时,这是一个相当粗糙的情况,但我想它无法帮助.由于一些用户人为地夸大了他们的观看次数,我将实施IP日志记录.并不是说他们是坏人,甚至是糟糕的用户.
看看有关缓存解决问题的答案......我将首先尝试这条路线.将更新结果.
值得一提的是,Stack Overflow似乎正在使用cookie(我无法增加自己的查看次数,但是当我在另一个浏览器中访问该站点时,它会增加.)
我认为这样做的好处太多了,这种"作弊"现在太容易了.
感谢大家的帮助!