Atualizador Twitter
Publicado por Francisco Souza 07/04/2009
[ Hits: 9.249 ]
Homepage: http://www.franciscosouza.net
Script de atualização do Twitter e gerenciamento simples. Versão inicial.
Simples de usar, o código explica como deve ser o uso.
$ python atualiza-twitter.py <usuário> <senha> <opção> (modo pouco interativo)
OU
$ python atualiza-twitter.py (modo 100% interativo)
#!/usr/bin/env python
#coding: utf-8
'''
Este script tem por intenção fazer um pequeno gerenciador de linha de comando para o twitter.
A principal intenção é conseguir atualizar o status, mas existem ainda outras funções.
O script é novo, fiz rapidamente, numa brincadeira. A idéia é ir incrementando ele COM O TEMPO.
Modos de uso:
> python atualiza-twitter.py <usuário> <senha> <opção> (Modo não-interativo)
> python atualiza-twitter.py (Modo interativo)
Autor: Francisco Antônio da Silva Souza
Versão: 0.1
Versão do Python: 2.5.x
Data da última atualização: 06 de abril de 2009
Copyleft - Nenhum direito reservado.
'''
import twitter
import sys
# Tentando otimizar o programa com um JIT Compiler
try:
import psyco
psyco.full()
except:
pass
class TwitterError(Exception):
'''Classe que representa erros ocorridos.'''
def __init__(self, message=None):
self.message = message
def determinar_acao(codigo):
'''Método que determina, dado um código inteiro, qual ação deve ser executada.'''
if codigo == 1:
msg = 'atualizar'
elif codigo == 3:
msg = 'amigos'
elif codigo == 4:
msg = 'seguidores'
elif codigo == 5:
msg = 'atualizacoes_amigos'
else:
msg = 'timeline'
return msg
def main(*args):
'''Método principal, onde a coisa realmente acontece.
O método recebe uma tupla com os argumentos.
'''
lista = args[0]
if len(lista) < 4:
raise TwitterError(message='''Verifique se você utilizou corretamente o script.\n
Modo de uso: atualiza-twitter.py <usuario> <senha> <opcao>
Opções possíveis:
atualizar - Atualiza seu status, presente no quarto parâmetro;
timeline - Visualizar timeline pública;
amigos - Obter lista de amigos do usuário (pessoas que o usuário segue);
seguidores - Obter lista de pessoas que estão seguindo o usuário;
atualizacoes_amigos - Obter timeline dos seus amigos;
''')
api = twitter.Api(lista[1], lista[2])
opcao = lista[3]
if opcao == 'atualizar':
texto = raw_input('Digite o texto do status: ')
tamanho = len(texto)
if tamanho > 1 and tamanho <= 140:
status = api.PostUpdate(texto.decode('utf-8'))
print 'Status postado com sucesso!\nTexto do Status: \'%s\'.' %(texto)
else:
raise TwitterError(message='Seu texto deve ter entre 2 e 140 caracteres!')
elif opcao == 'timeline':
sts = api.GetPublicTimeline()
print 'TIMELINE'
for s in sts:
print '%s: \'%s\'' %(s.user.name, s.text)
print
elif opcao == 'amigos':
amigos = api.GetFriends()
print 'LISTA DE AMIGOS DO USUÁRIO:'
for amigo in amigos:
print ' * %s' %amigo.name
elif opcao == 'seguidores':
seguidores = api.GetFollowers()
print 'LISTA DE SEGUIDORES DO USUÁRIO:'
for seguidor in seguidores:
print ' * %s' %seguidor.nome
elif opcao == 'atualizacoes_amigos':
atualizacoes = api.GetFriendsTimeline()
print 'LISTA DE ATUALIZAÇÕES DOS AMIGOS DO USUÁRIO:'
for st in atualizacoes:
print ' %s: \'%s\'' %(st.user.name, st.text)
# Execução principal
if __name__ == '__main__':
try:
if len(sys.argv) == 1:
print 'Para utilizar este script, você precisa estar autenticado.'
login = raw_input('Digite seu login: ')
senha = raw_input('Digite sua senha: ')
opcao = input('''Selecione no menu abaixo sua opção:
1 - Atualizar meu status
2 - Visualizar timeline pública
3 - Pessoas que estou seguindo
4 - Pessoas que me seguem
5 - Atualizações dos meus amigos
Digite sua opção: ''')
nome_opcao = determinar_acao(opcao)
lista = [sys.argv[0], login, senha, nome_opcao]
main(lista)
else:
main(sys.argv)
except TwitterError, e:
print e.message
except:
sys.exit(1)
Tradutor Inglês/Português utilizando MyMemory
Cotação do Dólar com requests_html
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
E aí? O Warsaw já está funcionando no Debian 13? [RESOLVIDO] (15)
Secure boot, artigo interessante, nada técnico. (4)
copiar library para diretorio /usr/share/..... su com Falha na a... (1)









