Script para publicar feeds rss no quitter.se

O quitter.se é uma alternativa livre para o twitter. Eu já havia criado um perfil pessoal no quitter, mas fazia bastante tempo que não usava. Ano passado (2014) quando trabalhei na comunicação do FISL, também criei um perfil para o evento mas ele estava sem uso.

Como eu já usei o serviço gratuito do dlvr.it para pegar o feed rss do site e postar no perfil do twitter, procurei uma alternativa para postar esse feed no quitter, assim o perfil passaria a ficar movimentado. Não achei nenhuma solução nos sites gratuitos como o dlvr.it, twitterfeed, ou IFTTT.

Depois de muito pesquisar principalmente em sites relacionados aos projetos GNU Social e pump.io, decidi entrar no canal #social do irc.freenode.net para perguntar se alguém por lá conhecia uma solução. E logo depois que fiz a pergunta, uma pessoa me respondeu dizendo que havia criado um script chamado gnurss para puxar o feed rss e publicar nas redes do GNU Social :-)

A página que contém a descrição do script é essa: http://elbinario.net/2015/02/11/gnusrss-publicando-feeds-en-gnu-social

O processo de instalação é esse:

$ aptitude install python3-pip libcurl4-gnutls-dev librtmp-dev
$ pip-3.2 install pycurl PySocks
$ git clone https://gitlab.com/drymer_/gnusrss.git
$ cd gnusrss/
$ mv example.py fisl.py
$ vi fisl.py

Configuração do arquivo fisl.py:

username = ‘fisl’
password = ‘xxxx’
api_url = ‘http://quitter.se/api/statuses/update.xml’
tor = “no”
txt = ‘feed-fisl.txt’
txt_tmp = ‘feed-fisl_tmp.txt’

O script vai puxar os feeds e guardar no arquivo “feed-fisl.txt” o título da notícia e o link para ela. Será publicado no quitter o título da notícia e o link encurtado para ela.

O comando para puxar os feeds e publicar no quitter é:

$ python3.2 fisl.py

Para testar o envio de uma publicação para o quitter:

$ curl -u usuario:senha https://quitter.se/api/statuses/update.xml -d status=’teste’

Se tudo der certo, para rodar a cada 1 hora no crontab:

00 * * * * cd /root/gnusrss && python3.2 fisl.py

Arquivos do script gnurss