October 5, 2019

235 words 2 mins read

vlajnaya-mol/message-analyser

vlajnaya-mol/message-analyser

Statistical analysis of VKontakte and Telegram message history.

repo name vlajnaya-mol/message-analyser
repo link https://github.com/vlajnaya-mol/message-analyser
homepage
language Python
size (curr.) 8866 kB
stars (curr.) 132
created 2019-02-20
license MIT License

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).
comments powered by Disqus