All Projects → kaustubhhiware → Facebook Archive

kaustubhhiware / Facebook Archive

Licence: mit
Just some fun you can have with facebook's archive data

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Facebook Archive

Volbx
Graphical tool for data manipulation written in C++/Qt
Stars: ✭ 187 (+196.83%)
Mutual labels:  data, data-visualization
Datagear
数据可视化分析平台,使用Java语言开发,采用浏览器/服务器架构,支持SQL、CSV、Excel、HTTP接口、JSON等多种数据源
Stars: ✭ 266 (+322.22%)
Mutual labels:  data, data-visualization
Chord
Python package for creating beautiful interactive Chord Diagrams. Pro version available at https://m8.fyi/chord
Stars: ✭ 217 (+244.44%)
Mutual labels:  data, data-visualization
Just Dashboard
📊 📋 Dashboards using YAML or JSON files
Stars: ✭ 1,511 (+2298.41%)
Mutual labels:  data, data-visualization
Metabase
The simplest, fastest way to get business intelligence and analytics to everyone in your company 😋
Stars: ✭ 26,803 (+42444.44%)
Mutual labels:  data, data-visualization
Lookerbot
Lookerbot lets you access all your Looker data from Slack! Super fun!
Stars: ✭ 138 (+119.05%)
Mutual labels:  data, data-visualization
Jschema
A simple, easy to use data modeling framework for JavaScript
Stars: ✭ 261 (+314.29%)
Mutual labels:  data, data-visualization
Startr
A template for data journalism in R
Stars: ✭ 69 (+9.52%)
Mutual labels:  data, data-visualization
Facebook data analyzer
Analyze facebook copy of your data with ruby language. Download zip file from facebook and get info about friends ranking by message, vocabulary, contacts, friends added statistics and more
Stars: ✭ 515 (+717.46%)
Mutual labels:  facebook, data-visualization
Yt
Main yt repository
Stars: ✭ 279 (+342.86%)
Mutual labels:  data, data-visualization
Awesome Bigdata
A curated list of awesome big data frameworks, ressources and other awesomeness.
Stars: ✭ 10,478 (+16531.75%)
Mutual labels:  data, data-visualization
Data Forge Ts
The JavaScript data transformation and analysis toolkit inspired by Pandas and LINQ.
Stars: ✭ 967 (+1434.92%)
Mutual labels:  data, data-visualization
D3vue
A D3 Plugin for VueJS
Stars: ✭ 87 (+38.1%)
Mutual labels:  data, data-visualization
Data Science Resources
👨🏽‍🏫You can learn about what data science is and why it's important in today's modern world. Are you interested in data science?🔋
Stars: ✭ 171 (+171.43%)
Mutual labels:  data, data-visualization
Ac D3
Javascript Library for building Audiovisual Charts in D3
Stars: ✭ 76 (+20.63%)
Mutual labels:  data, data-visualization
Vis Academy
A set of tutorials on how our frameworks make effective data visualization applications.
Stars: ✭ 254 (+303.17%)
Mutual labels:  data, data-visualization
Graphia
A visualisation tool for the creation and analysis of graphs
Stars: ✭ 67 (+6.35%)
Mutual labels:  data, data-visualization
Muze
Composable data visualisation library for web with a data-first approach now powered by WebAssembly
Stars: ✭ 1,153 (+1730.16%)
Mutual labels:  data, data-visualization
Data Science Hacks
Data Science Hacks consists of tips, tricks to help you become a better data scientist. Data science hacks are for all - beginner to advanced. Data science hacks consist of python, jupyter notebook, pandas hacks and so on.
Stars: ✭ 273 (+333.33%)
Mutual labels:  data, data-visualization
Lpfmpoints
Evolution of LPFM Stations
Stars: ✭ 19 (-69.84%)
Mutual labels:  data, data-visualization

facebook-archive

forthebadge forthebadge

Chat at Slack

PRs Welcome MIT Licence Python

GitHub open pull requests GitHub open issues

Analyse everything facebook knows about you, through their own archive.

In light of the recent facebook's data breach, Mark Zuckerberg made all the data available for each user via Facebook. You're going to need to download it, we'll get to it shortly. There are some things that would take a lot of time (too costly API calls) online, but can be easily done on archived data.

Note to KWoC contributors: All issues are available for KWoC, feel free to work on any issue after being assigned.

Table of Contents

Getting the data

  1. Head on to Facebook > Settings > General Settings > Your facebook information.
  2. Select the JSON data format and click on download archive. It might take some time to prepare the archive, this might take upto 10-15 minutes. NOTE: The download might be in order of 100s MBs. Disable photo and video download options to save some bandwidth. (My archive was ~300MB).
  3. If possible, download the same data in HTML format. It is much easier to browse through your archive and spot some interesting patterns in the HTML format, however this is not necessary. The JSON format will suffice for processing, refer #2.

↥ back to top

Usage

Install requirements with pip install -r requirements.txt

Friends

python plot_friends.py [path] [--from date] [--to date]
  • path is the path to the facebook data archive
  • --from date specify the beginning of the plot
  • --to date specify the end of the plot
  • date string is in format YYYY-MM-DD
> python plot_friends.py
Enter facebook archive extracted location: <location of extracted data folder,  e.g.: "facebook-kaustubhhiware">

You can also run the script on sample data included in the examples folder:

> python plot_friends.py
Enter facebook archive extracted location: ./examples

↥ back to top

Messages

Will be updated soon

  • Plot messages across all conversations.
> python plot_messages.py
Enter facebook archive extracted location: "location of extracted, downloaded zip: like facebook-kaustubhhiware" 

Locations

Will be updated soon

  • Plot your location history.
> python where_have_you_been.py 
Enter facebook archive extracted location: "location of extracted, downloaded zip: like facebook-kaustubhhiware" 

↥ back to top

Contributing

Your contributions are always welcome 😄 ! Please have a look at the contribution guidelines first.

Before working on an issue / feature, it is crucial that you're assigned the task on a GitHub issue.

  • If a relevant issue already exists, discuss on the issue and get yourself assigned on GitHub.
  • If no relevant issue exists, open a new issue and get it assigned to yourself on GitHub. Please proceed with a Pull Request only after you're assigned. It'd be a waste of your time as well as ours if you have not contacted us before hand when working on some feature / issue.

If you are here for GirlScript's Summer of Code and wish to seek assistance, feel free to contact any of the mentors on slack - @kaustubhhiware, @techytushar, @Anubhav, @fhackdroid, @Roopal.

↥ back to top

Features

(Click to expand)

Your friends

Plot the friends you make every day (blue), and the friends so far (orange).

Plot exclusively the friends you make each day.

Plot messages as a function of month.

↥ back to top

Your Messages

The following is available for either a specific chat (person / group) or for all messages.

Plot all messages so far,

Plot daily message frequency

Plot monthly message frequency

Plot yearly message frequency

↥ back to top

Top_10_friends_whom_I_message and Top_10_friends_who_message_me

Find the top ten friends whom you message and plot each friends no. of messages as a function of time https://github.com/hadesanirban/facebook-archive/tree/master/images/Top_10_Friends_whom_I_message

  • Plot Top_ten_Friends.
> python plot Top_ten_Friends.py --num_friends 7 (for example)
enter your official facebook name: "your name as in facebook i.e. Anirban Panda"
Enter facebook archive extracted location: "location of extracted, downloaded zip: like facebook-kaustubhhiware"

Also added a new command line argument named num_friends which helps you to plot as many friends as you want but default value is set to 10.

Friend Request

Plot the friends you make every day(Red) ,friend request send every day(green) and friend request received every day(blue)

We compare monthwise no.of friend request send vs friend request received

Your reactions

Plot count of different reactions to posts

Plot of 10 Friends whose posts you react to the most

Plot reactions as a function of month.

Plot cumulative count of different reactions on a single plot

↥ back to top

Your posts and comments

Wordcloud of common words in your posts and comments

Most tagged friends in your post

Your Locations

Plot all locations so far,

↥ back to top

Observations

  1. There is a spike in friends made in March (Election season) and July (new juniors, much higher spike).

  2. I tend to message less during exams (Feb, Apr, Sep, Nov).

  3. Highest number of messages sent at 9 and 11 pm, confirming with calls from home come at 10pm. Almost no messages shared between 3am-7am.

  4. I used to send more friend request as compared to friend request received.

  5. I tend to receive more friend request in the month of july,august(new juniors)

↥ back to top

Why

I always wanted to know how many friends I make every month. It would have been infeasible to make a webapp out of this because so many API calls would be so slow, and whosoever wants to work with Facebook's Graph API?

Plus it was raining and I couldn't go to MS's Hall Day till after the rain stopped.

Have a feature request? See an interesting avenue not utilised yet with facebook's archive? Let me know by making a new issue.

↥ back to top

License

The MIT License (MIT) 2018 - Kaustubh Hiware. Please have a look at the LICENSE for more details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].