使用者統計次數

2021-10-03 08:29:50 字數 1119 閱讀 3292

記錄使用者訪問數,當使用者第一次訪問時,訪問次數加1(判斷如果從redis庫沒有獲取到客戶端ip,將使用者的訪問數加1,將客戶端ip位址存入redis庫並設定過期時間,否則不加)

# 導包

from django.db.models import q,f

# 建立redis連線

import redis

r = redis.redis(

'localhost'

)# 個人主頁介面

class

getuser

(apiview)

:def

get(self,request)

:# 獲取客戶端ip

)# 獲取使用者id

uid = request.get.get(

'uid',''

)# 設定防刷邏輯

if r.get(ip)

==none

:# 將使用者訪問數累加

user.objects.

filter

(q(id

=int

(uid)))

.update(num=f(

'num')+

1)# 將使用者ip存入到redis

r.set(ip, ip)

# 設定過期時間, 單位是秒

r.expire(ip,60)

else

:pass

# 查詢使用者

user = user.objects.

filter

(q(id

=int

(uid)))

.first(

)# 序列化操作

user_ser = userser(user)

return response(user_ser.data)

牛客 出題的訣竅(統計次數)

出題的訣竅 思路 這道題目如果不考慮重複就很簡單了,就是先求出總和sum,ans sum m n 1 這裡我n表示行數,m表示列數,與題中給出的n,m表示的意義不同 考慮重複的就是對每一行進行考慮,對每一行的每乙個元素x進行計算,用序列a1,a2,a3 ai an表示元素x在前i行 1 i行 出現的...

mysql實現連續 累計次數的邏輯

最近碰到這樣乙個需求,測算連續逾期3期或者累計逾期6期的件,並找到觸發這個條件是在哪一期。實現的關鍵是group contact函式。首先給每期還款狀態打標flag,1逾期,0不逾期。select group contact flag order by 期數 asc separator as fla...

搜尋出字串中出現次數最多的字元,並統計次數

今天看到一道題,搜尋出字串中出現次數最多的字元,並統計其次數,就自己動手寫一下,是用遞迴來實現的,原理是這樣的 每一次都取出字串str的第乙個字元fs,統計出其在字串str中出現的次數n,然後把字串str中的fs刪除,一直到字串str的長度小於n。1 varstr aaaa13123aass1231...