Existe uma maneira simples de recuperar os tweets de alguém na linha de comando?
A conta seria pública e o comando - ou script, se necessário - recuperaria todos ou um número especificado de tweets mais recentes em um arquivo de texto, um tweet por linha, sem os metadados, o mais recente da primeira linha.
Sem o uso da API, apenas bash.
command-line
bash
wget
Strapakowsky
fonte
fonte
Respostas:
A partir de uma data aproximada, o Twitter não permitirá que você entre na API deles sem ter uma chave OAuth. Mas, como solução alternativa, você pode usar a API de pesquisa. É RESTful, portanto, você pode usar
curl
para recuperar os resultados da pesquisa no formato JSON. Por exemplo, se você deseja recuperar os tweets de @ java e salvá-lo em arquivo~/.tweets
, esta linha de código pode ser usada:E você pode analisar o arquivo usando qualquer analisador JSON.
O
rpp
parâmetro é o número de tweets a serem recuperados.callback
é a função javascript a ser executada no JSON resultante. Caso você não esteja usando JavaScript com a API, você pode deixá-lo?, Mas não o remova. Causarei um erro. Mais orientação sobre a API de pesquisa pode ser encontrada em https://dev.twitter.com/docs/api/1/get/searchExistem ferramentas para analisar JSON a partir da interface da linha de comandos. Embora eu nunca tenha usado um, colocarei alguns links em alguns recursos para ajudá-lo a encontrar a ferramenta mais adequada:
E, como uma pequena observação, é mais rápido usar alguns Python ou Ruby (ou outros).
fonte
Se você não quiser usar a API do Twitter, poderá pegar o feed RSS do perfil do Twitter usando um script bash e prosseguir para formatá-lo a partir daí.
Como a API do Twitter descontinuou o feed RSS, você pode contornar isso gerando feed RSS usando os resultados da pesquisa.
Aqui está o feed RSS dos meus tweets .
Você teria que montar o script bash necessário. Desde a busca do feed RSS até a formatação dos tweets conforme suas necessidades.
fonte
Este é o meu script feito para uso no protetor de tela
fonte
Eu criei uma ferramenta que deveria fazer quase exatamente o que você descreveu: twitter-screen-scrape . Por padrão, ele será produzido em JSON, com metadados, mas é trivial canalizar a saída através de algo como underscore-cli para remover tudo o que você não deseja.
fonte
Você pode seguir a rota python + tweepy:
Acabei de testar e funciona muito bem. No entanto, existem usuários que protegem seus tweets, portanto, pode não permitir que você baixe tudo. Mas isso é uma característica do twitter.
O limite ainda é 3200 e você obtém um arquivo CSV.
fonte
Você pode
twarc
dar um exemplo se quiser arquivar os tweets de Nassim Nicholas Taleb que você usa.Você também pode usar outros formatos:
--format {json,csv,csv-excel}
Como configurar
twarc
: a única maneira de obter os tweets completos é usando oAPI
infelizmente, mesmo que o aplicativo seja transparente, você precisa ter uma instalação e uma configuração inicial, também precisa solicitar oAPI
()
Depois de obter as chaves do aplicativo, você pode dizer
twarc
o que são com o comando configure.Isto irá armazenar suas credenciais em um arquivo chamado
.twarc
em seu diretório home para que você não tem que manter a introduzi-los. Se você preferiria fornecê-los diretamente pode defini-los no ambiente (CONSUMER_KEY
,CONSUMER_SECRET
,ACCESS_TOKEN
,ACCESS_TOKEN_SECRET
) ou usar opções de linha de comando (--consumer_key
,--consumer_secret
,--access_token
,--access_token_secret
).fonte