Coder Social home page Coder Social logo

facebookranker's Introduction

facebookRanker

Rank your Facebook friends using the mysterious "InitialChatFriendsList"

THIS SCRIPT IS AGAINST FACEBOOK TERMS OF SERVICE

Any form of bot scraping of user data is against Facebook TOS
For educational purposes only :)
please don't sue me

How to use

  1. run python retrieveSource.py for or python retrieveSource.py --lookup if you are using the old Facebook layout (Must have 2 Facebook accounts!)
  2. Enter accounts as prompted
  3. run python analysis.py to see aggregate rank data and rank changes between days. Run the script over multiple days to get a clearer picture of rank.

Dependencies

  • Python
  • pip
  • Webdriver for Chrome
  • Selenium
  • pandas

Details

Many years of discussion have been had about the nature of "InitialChatFriendsList". Facebook's algorithm for it is under lock and key so the public will never know. What it is speculated to be based on is all kinds of interactions - Chat, Group Chat, Wall Posts, Comments, Likes, and most importantly Profile Visits (This list is non-exhaustive!)
Everything in the ranking is bi-directional so if you happen to visit someone's profile alot, they will shoot up the ranks. This isn't just who stalks you :)

Who's Stalking me?

Using analysis.py you'll see on a day-by-day basis how ranks change. Positive increases imply activity - if you haven't done any interaction with the person, it is possible they have viewed your profile.

How it works

  • New Layout
    Selenium is used to lookup Chat Sidebar List Rankings. Ranks are written to a CSV file with today's date in the ./logs/ folder
  • Old Layout
    Selenium is used to open the second Facebook account first. This account is used to lookup users not available in the shortProfiles attribute. Your main account is then loaded and the InitialFriendsChatList is retrieved along with the shortProfiles. Ranks are written to a CSV file with today's date in the ./logs/ folder by matching, in order, InitialFriendsChatList ids to the shortProfiles or looking up the user using the second account.

Future features

  • read account(s) from JSON file
  • persistent User tracking via local file to reduce lookups
  • scheduling

facebookranker's People

Contributors

snirappil-appirio avatar snirappi avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.