Bu yazıda python ile twitter üzerinden veri çekeceğiz, öncelikle bu linkten twitter api için uygulama oluşturuyoruz.Erişim bilgilerini aldıktan sonra tweepy i kuruyoruz.En güncel versiyonunu buradan bulabilirsiniz.
Twitter geliştirici hesabını açtık , yeni uygulama oluşturup bağlantı için değerlerimizi aldık ve tweepy i kurduysak veri çekmeye başlayalım.
import tweepy consumer_key = "--" consumer_secret = "--" access_key = "--" access_secret = "--" try: auth = tweepy.OAuthHandler(consumer_key, consumer_secret) auth.set_access_token(access_key, access_secret) auth.get_authorization_url() api = tweepy.API(auth) except tweepy.TweepError: print ('Hata') user = api.get_user("ogunal00") #kullanıcıyı ogunal00 olarak seçtik print(user) |
Tırnak ile doldurduğum yerleri geliştirici hesabı ile aldığınız anahtarlar ile doldurun.
Try except kısmında twittera bağlantı kuruyoruz.Daha sonra bir kullanıcı tanımlayıp onun bilgilerini basıyoruz.
Yukarıdaki kodu bu hali ile çalıştırdığımızda karşımıza json formatında bir çıktı verecektir.Daha okunaklı ve sadece işimize yarayan kısımlarını almak için kod üzerinde değişiklik yapalım.
import tweepy import tweepy consumer_key = "--" consumer_secret = "--" access_key = "--" access_secret = "--" try: auth = tweepy.OAuthHandler(consumer_key, consumer_secret) auth.set_access_token(access_key, access_secret) auth.get_authorization_url() api = tweepy.API(auth) except tweepy.TweepError: print ('Hata') user = api.get_user("ogunal00") print ("Kullanıcı adı: " + user.screen_name) print ("İsim: " + user.name) print ("Açıklama: " + user.description) print ("Takipçi: " + str(user.followers_count)) print ("Takip edilen: " + str(user.friends_count)) print ("Tweet sayısı: " + str(user.statuses_count)) print ("Web site: " + str(user.url)) print ("Kayıt tarihi: " +str(user.created_at)) print ("Lokasyon: " + user.location) print("Dil: "+user.lang) print ("Favoriler: " +str(user.favourites_count)) |
Kodu çalıştırıyoruz ve kullanıcının bilgilerini çekiyoruz.

Json formatından elde edebileceğimiz bilgileri aşağıdaki görsel üzerinden inceleyebilirsiniz.

(Görsel: http://socialmedia-class.org/ )
Eğer kullanıcının tweetlerini çekmek istersek:
import tweepy import tweepy consumer_key = "--" consumer_secret = "--" access_key = "--" access_secret = "--" try: auth = tweepy.OAuthHandler(consumer_key, consumer_secret) auth.set_access_token(access_key, access_secret) auth.get_authorization_url() api = tweepy.API(auth) except tweepy.TweepError: print ('Hata') public_tweets = api.user_timeline(screen_name = "ogunal00",count = 5) # ogunal00 kullanıcısının 5 adet tweeti for tweet in public_tweets: print(tweet.text) |
Bu şekilde ogunal00 kullanıcısının 5 adet tweetini çekmiş olduk. print(tweet.text) yerine print(tweet) yazarsanız aynı kullanıcı bilgisinde olduğu gibi karşısınıza bir json formatında çıktı gelecektir.Oradan tweetin atıldığı tarihi vs çekebilirsiniz.
NOT: Tweetleri çekebilmeniz için tweetlerin public olması lazım veya kullandığımız hesap ile takip ediyor olmamız gerek.

(ogunal00 kullanıcısının 5 adet tweeti)
Dilerseniz daha fazla bilgi için tweepy nin kendi dökümantasyonunun bulunduğu adrese buradan ulaşabilirsiniz.
Çok yardımcı bir kaynak teşekkürler
location yani konum almak istiyorum ancak beceremiyorum yardımcı olursanız sevinirim tweet.location dan çekemiyorum
Kullanicinin konum bilgisini çekmek için user.location parametresini kullanmanız lazım
kullanıcının cinsiyetinide çekebiliyormuyuz?
son 5 yıldaki tweetleri çekebilir miyiz ? çekebilirsek eğer konumu Turkey olanları çekebilir miyiz ?
if tweet.geo == “Turkey” seklinde filtreleme yapabilirsiniz
teşekkürler , bir hastag i girip o hastag in kullanıldığı geçmiş ve şuanki tweetleri çekebilir miyiz ?
Evet, burada bir örneği var: https://gist.github.com/vickyqian/f70e9ab3910c7c290d9d715491cde44c
Merhaba,
Yapabildiniz mi geçmiş tweetleri çekmeyi
merhaba apps.twitter yaz aylarından beri key token vermek için süründürmeye başlamış sanrım koca koca sayfalar doldurtturup inceleme yapacaklarını söylüyorlar ama benim vaktim yok acilen projeyi geliştirip bir kullanıcıdan twit ve beğenilerini çekmem lazım. ne önerirsiniz :/
Uzun twitleri eksik çekiyor bunun bir çözümü var mı ?
Merhaba, gerçekleştirdiğim bir çalışma için twitterdan belirli hashtagleri içeren belirli bir zaman aralığında ve belirli bir lokasyonda paylaşılmış tweet verilerini çekmem gerekiyor. Bunun için nasıl bir kod yazmam gerekiyor?
Yardımcı olursanız sevinirim, teşekkürler