• Stars
    star
    192
  • Rank 202,019 (Top 4 %)
  • Language
    Python
  • License
    MIT License
  • Created almost 6 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Statistical analysis of VKontakte and Telegram message history.

message-analyser

Statistical analysis of VKontakte and Telegram message history. front example

Dependencies

Installation

  • Use Python3.6. 3.7 version may not work properly.
  • git clone https://github.com/vlajnaya-mol/message-analyser
  • Install requirements.txt. (pip install -r /path/to/requirements.txt)

Usage

Execution

  • Run python main.py
  • Follow GUI commands

Telegram messages

  • You need API Hash and API ID from here
  • Be sure to use proxy if Telegram is blocked in your country.

VKontakte messages

  • Install VkOpt extension

  • Save Your conversation as .txt file using this extension

    Be sure You used default format settings:

    %username% (%date%):
    %message%
    
    HH:MM:ss  dd/mm/yyyy
    
  • You can concatenate two VkOpt files and use as one

  • Include this file in the analysis process

Words

  • Write words You are interested in to a file
  • Be sure words are saved correctly. Cyrillic words are ruined by saving in ASCII format.
  • Include this file in the analysis process

Manual analysis

  • Fill config.ini file and use retrieve_and_analyse(loop) instead of using GUI.
  • Use analyse_from_file(path) function instead of redownloading messages

Examples

  • All examples can be found here other example other example other example other example other example other example other example other example other example other example other example

Potential project improvements

  • analysis of group chats.
  • improve tkinter theme.
  • add VkOpt stickers as emojis to messages.
  • add plot correlation between the number of voice messages and the average message length.
  • add "first-to-write" and "response time (delay)" plots (lineplot).
  • add n-grams plot (lineplot).