Coletando dados do Twitter via Application Programming Interface (API)

download Coletando dados do Twitter via Application Programming Interface (API)

If you can't read please download the document

description

Coleta de Dados do Twitter via API. Usando a Streaming API com python, oAuth e acumulando em CSV para uso em pesquisas científicas.

Transcript of Coletando dados do Twitter via Application Programming Interface (API)

  • 1. Universidade Estadual PaulistaEncontro Internacional Dados,Tecnologia e InformaoColetando dados do Twitter via ApplicationProgramming Interface (API)M.Sc. Fernando de Assis Rodrigues (@orionx7)Departamento de Cincia da InformaoFaculdade de Filosofia e CinciasCampus Marlia, SP

2. Fernando de Assis Rodrigues - 2013 2Este Slide est disponvel emhttp://www.slideshare.net/orionx7 3. Fernando de Assis Rodrigues - 2013 3Objetivos Twitter API Python oAuth Exemplos 4. Fernando de Assis Rodrigues - 2013 4Twitter Servio http://twitter.com Rede Social 2006 Jack Dorsey, Noah Glass, Evan Williams e Biz Stone Permite que seus usurios envie mensagens conhecidas como tweets Broadcasting: mensagens so enviadas muitos receptoresao mesmo tempo 5. Fernando de Assis Rodrigues - 2013 5Twitter US$ 140 milhes +900 funcionrios Escritrios em diversas localidades Sede em So Francisco, CA - EUA Inclusive abrindo um no Brasil Jogos Olmpicos, Copa do Mundo... 140 milhes de usurios ativos 340 milhes de tweets por dia Top 5: Indonsia, Brasil, Venezuela, Holanda e Japo 6. Fernando de Assis Rodrigues - 2013 6Twitter Rede Social Perfil privado/pblico Afeta diretamente o broadcasting Solicitaes de amizade Seguidores e seguidos Cadastro Sem cadastro, pode observar perfil pblico 7. Fernando de Assis Rodrigues - 2013 7Twitter Microblogging Tweets Limitados a 140 caracteres Geolocalizao* Fotografia* Hyperlinks* Hashtags** itens opcionais 8. Fernando de Assis Rodrigues - 2013 8Twitter Microblogging Retweets - retuitar Passar frente para seus seguidores tweets de quemvoc segue Diretamente Indiretamente: RT: Identificao de outros perfis Smbolo @ @orionx7 estou ministrando uma oficina sobre api do #twitter 9. Fernando de Assis Rodrigues - 2013 9Twitter Hashtags Usados para agrupar os tweets por tpicos Uso do smbolo # antes do tpico #ficadica #ironia #sade #vergonha Hashtag spam Bom dia #bom #dia #bomdia #hahaha #sabadinho #sabado#galera 10. Fernando de Assis Rodrigues - 2013 10TwitterFonte: https://blog.twitter.com/2012/twitter-turns-six 11. Fernando de Assis Rodrigues - 2013 11Twitter NotciasSpamAuto PromoochitchatRetweetsConversasFonte: Pear Analytics 12. Fernando de Assis Rodrigues - 2013 12Twitter Trending Topics Anlise do prprio twitter sobre os assuntos maistuitados em um determinado perodo de tempo Principalmente baseado em hashtags e na geolocalizaoou via faixa de ip Third-party Apps Aplicaes que adicionam funcionalidades a estrutura doTwitter http://twitcam.livestream.com transmisso de vdeos via Twitter TweetDeck 13. Fernando de Assis Rodrigues - 2013 13Twitter Openess Possibilidade de utilizar dados do twitter em outroscontextos Coletar dados Perfis Pblicos 14. Fernando de Assis Rodrigues - 2013 14Twitter Application Programming Interface (API) Protocolo para interface entre aplicaes Permite o acesso aos dados de uma determinadaaplicao por aplicativos ou algoritmos criados porterceiros Regras de negcio 15. Fernando de Assis Rodrigues - 2013 15TwitterDBTwitter.comAPITweetDeckTwitter 16. Fernando de Assis Rodrigues - 2013 16Twitter Basicamente Escrever um algoritmo Conecte Execute uma ao Recupere um dataset Seguindo as regras da API Twitter: https://dev.twitter.com/docs 17. Fernando de Assis Rodrigues - 2013 17Twitter oAuth Sistema identificao de aplicaes necessriopara criar aplicaes que usam a base de dados doTwitter https://dev.twitter.com/apps 18. Fernando de Assis Rodrigues - 2013 18Twitter Create a new application 19. Fernando de Assis Rodrigues - 2013 19Twitter 20. Fernando de Assis Rodrigues - 2013 20Twitter 21. Fernando de Assis Rodrigues - 2013 21Twitter Consumer key Consumer secret 22. Fernando de Assis Rodrigues - 2013 22Twitter Criando um token, voc autoriza sua novaaplicao tenha acesso a sua conta do Twitter 23. Fernando de Assis Rodrigues - 2013 23PythonPython is a programming language that lets youwork more quickly and integrate your systemsmore effectively. You can learn to use Python andsee almost immediate gains in productivity andlower maintenance costs. 24. Fernando de Assis Rodrigues - 2013 24Python Instalando o python http://www.python.org/ Instalando o python-oauth2 https://github.com/simplegeo/python-oauth2 Ou usando o python-pip pip install oauth2 25. Fernando de Assis Rodrigues - 2013 25Coletando dados do Twitter via publicstreaming 26. Fernando de Assis Rodrigues - 2013 26Twitter Streaming API https://dev.twitter.com/docs/streaming-apis JSON JavaScript Object Notation XML http://jsonviewer.stack.hu/ Usando e adaptando o script: Gustav Arngrden http://www.arngarden.com/2012/11/07/consuming-twitters-streaming-api-using-python-and-curl/ 27. Fernando de Assis Rodrigues - 2013 27Twitter1. Usando o script de Gustav Arngrden2. Adaptando o scripta. Parar e ver apenas um post completo Visualizando uma resposta em notao JSONb. Parar e ver apenas alguns atributos de um postc. Coletando os posts do streaming para um arquivoCSV 28. Fernando de Assis Rodrigues - 2013 [email protected]@orionx7 29. Fernando de Assis Rodrigues - 2013 29Hyperlinks http://www.arngarden.com/2012/11/07/consuming-twitters-streaming-api-using-python-and-curlhttps://github.com/simplegeo/python-oauth2https://dev.twitter.com/docs/auth/tokens-devtwittercomhttp://peter-hoffmann.com/2012/simple-twitter-streaming-api-access-with-python-and-oauth.html https://www.google.com/webhp?sourceid=chrome-instant&client=ubuntu&channel=cs&ion=1&ie=UTF-8#newwindow=1&safe=off&client=ubuntu&hl=en&channel=cs&sclient=psy-ab&q=using%20python-pip%20on%20windows&oq=&gs_l=&pbx=1&fp=de4d6cf3d1c4e680&ion=1&bav=on.2,or.r_cp.r_qf.&bvm=bv.45960087,d.eWU&biw=1366&bih=634 30. Fernando de Assis Rodrigues - 2013 30Hyperlinks http://jsonviewer.stack.hu/ http://docs.python.org/2/tutorial/inputoutput.html#reading-and-writing-files http://en.wikipedia.org/wiki/Application_programming_interface#Object_API_and_protocols http://python.org/