1. 程式人生 > >關於微信投票的刷票分析

關於微信投票的刷票分析

     越來越多的人在平常生活中使用微信,以微信為載體的許多功能就被開發和使用了起來,比如——微信投票。於是乎,微信上興起了各種投票,從小學生到gov部門的投票活動都有,刷票交易也越來越火。刷票單純在請求的技術手段上,都是正常的訪問請求,基本是沒法識別的,但它真的像吃瓜群眾一樣說的沒法認出來嗎?未必!

    1.水軍為了做更多生意自曝身份,在微信暱稱上用了顯而易見的刷票詞語,比如用“票”篩選投票資料,就得到了大量的刷票資訊,見圖:


   這樣,只要通過一定的規則來匹配投票人的微信暱稱,判斷出投票人是否是刷票的,如果是進入黑名單。如果一個被投票的有大量黑名單的人給他投票,那麼他就有花錢買票嫌疑。

  2.每天投票量統計分析,如果是持續幾天的投票。我們設想被投票人每天都在努力地拉票,從開始到結束應該是一個影響力越來越大或者影響力在結束的時候弱一點,所以每天的投票量統計曲線是先抑後揚或呈正態分佈。把每個選 手的每天投票量曲線做出來,和其他人不一樣的就一眼看出來了。

  3.時段投票量統計分析,這個應該比較容易理解,投票時間應該符合一般人的作息時間,如果在凌晨一、兩點某個選手出現大量的投票,而他白天投票量反正少,這就很難用正常投票解釋了。

  4.投票數爆發點與超越關係的分析。買票是需要成本的,被投票人買票的話當然是想用最少的成本取得第一。如果他被別人超越了的話,不想讓自己先期投入變成“沉沒成本”,只能加錢再買票再次超越別人。所以,如果一個選手多次被別人超越後投票數立馬上升,特別是上升的票數都差不多(想象一下每次都是一百一百地買票),那就基本是刷票了。

  5. 多人刷票的情況。這種情況下就有點好玩了,發展的結果是:

         a.誰也不服誰,槓上了,超越關係明顯。最後錢多的2,3個人超過其他人好多倍的票;

         b.為了節約成本,保持第二或第三,在最後時段為了奪冠衝刺刷票,產生了一個非常異常的投票量曲線。

    誰最清楚哪個人是刷票水軍呢?應該是疼xun。如果是專門做投票系統,積累了大量資料的話,是可以建立模型識別是刷票行為的(至於為了點選量是否願意做這個,或者做了這個不啟用就不得而知了),小公司的話也可以用第1點做簡單地判斷,另外可以加驗證碼,增加投票時間操作,提高刷票水軍的時間成本,另外驗證碼看多了眼睛也會花的偷笑

     公正的投票才好玩,不是嗎?