Bot do Telegram - Para a captura de dados dos canais no Telegram dos Presidenciáveis
Para as tabelas telegram_entities e telegram_messages possuímos 'copia' como *_changes
Sendo as colunas comuns para ambas:
- attr_name: Indicando o nome de qual coluna foi modificada na tabela
- old_value: O valor anterior
- new_value: O Valor atual
- date: Data de modificação
- addition Caracteres inseridos
- removal caracteres removidos
- Execute o comando
pip install -r requirements.txt
para instalar as dependências; - Adicione as informações do banco de dados no
config.json
; - Troque a variavel
"env": "dev"
para"env": "prod"
no arquivoconfig.json
caso esteja em produção; - Execute o comando
python run_configuration.py
para fazer o upload do banco de dados.
- Instale o firefox
sudo amazon-linux-extras install firefox
- Execute o comando
sudo yum -y install wget
- Depois baixe o pacote
wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox-0.12.6-1.amazonlinux2.x86_64.rpm
- Instale o pacote
sudo yum install ./wkhtmltox-0.12.6-1.amazonlinux2.x86_64.rpm
Para o imgKit funcionar corretamente ao ser rodado pelo crontab na EC2 devemos modificar o caminho dos arquivos binários.
- Descrubra onde esta o arquivo digitando
whereis wkhtmltoimage
- Copie eles com o comando
sudo cp /usr/local/bin/wkhtmlto* /usr/bin/
- Execute o comando
python get_groups.py
para registrar/atualizar novos canais no banco de dados. - Execute o comando
python get_new_messages.py
para registrar/atualizar novas mensagens no banco de dados. - Execute o comando
python send.py
para mandar os dados para o Telegram/Twitter. - Execute o comando
python trending.py
para enviar as postagens virais diarias para o Telegram/Twitter.
# Todo dia a cada 2 horas
0 */2 * * * cd /home/ec2-user/bot-presidenciaveis-telegram && ./run_all.sh
# Todo dia as 23:00 Horas
00 23 * * * cd /home/ec2-user/bot-presidenciaveis-telegram && /usr/bin/python3 trending.py >> ~/bot-presidenciaveis-telegram/trending.py 2>&1