Skip to content

ericksonlopes/SearchInExportChat

Repository files navigation

Instalação 🛠️

Python package

Supported Python Versions Pytest Pandas

git
clone
https://github.com/ericksonlopes/SearchInExportChat - API
cd
SearchInExportChat - API /

Crie uma máquina virtual para rodar o projeto.

python3 - m
venv
venv

Uma vez criado o seu ambiente virtual, deve ativá-lo.

No Unix ou no MacOS, executa:

source venv/bin/activate

No Windows, execute:

call
venv\Scripts\activate.bat

Com o ambiente virtual ativado, instale as dependências (certifique-se de que esteja na mesma pasta que o arquivo).

pip
install - r
requirements.txt

Como Utilizar a classe

Instancie a classe

sec = SearchInExportChat("conversa")

Filtro padrão

# Filtragem com todos os parametros
filtro = sec.filter_data(phone='+55 00 0000-0000', message='demorando', date='2022-01-16T00:00:00.00')
print(filtro)

# Traz todos os dados 
filtro = sec.filter_data()

Saída:

[
    {'phone': 'Paulo Mota', 'date': datetime.datetime(2022, 1, 16, 9, 34), 'message': 'tava demorando'},
    ...
]

Lista todos os contatos

# Lista os numeros que são encontrado na datas determinada
print(classe.list_phones(date='2022-01-16T00:00:00.00'))
# Lista todos os numeros encontrado na conversa
print(classe.list_phones())

Saída:

[
    '+55 00 0000-0000',
    ...
]

Contador de mensagens

# Conta quantidadede de mensagens que o número passado
print(classe.get_message_count_by_phone())

Saída:

[
    {'phone': '@erickson.lds', 'messages_number': 373},
    ...
]

Contador de mensagens

 # Conta quantidadede de mensagens que o numero passado com todos os filtros
print(classe.get_message_count_by_phone())

# Conta quantas mensagens todos os numeros enviaram
print(classe.get_message_count_by_phone())

Saída:

[
    {'phone': '+55 00 0000-0000', 'messages_number': 3560},
    ...
]

Extrair links

 # Extrai todos os links dentro dos filtros
print(classe.extract_links(phone='Paulo Mota', date='2022-01-16T00:00:00.00'))
# Extrai todos os links
print(classe.extract_links())

Saída:

[
    'https://github.com',
    'https://www.udacity.com',
    ...
]

Imagem com word cloud

classe.word_cloud(date='2022-01-09T00:00:00.00')

Saída:

img

Conta ocorrencia de palavras

# Conta quantas vezes o numero determinado digitou especificas palavras
print(classe.word_occurrence_counter(phone='@erickson.lds'))

Saída:

[
    {'Arquivos de midia': 72},
    {'amigo': 51},
    {'Bom': 33},
    {'dia': 33},
    ...
]