• 10-04-2023, 18:13:07
    #1
    Merhaba,

    Bitirme tezi için twitter üzerinden veri çekmem gerekiyor ve ben twitter developer hesabımı bağlayıp veri çekmeye çalışınca hem input olarak girdiğim veriden daha az tweet dönüyor hem de inanılmaz alakasız tweet gelip çoklama yapıyor. Bunu çözmek için selenium ve beautifulsoup kullandım ama orada da

    soup = BeautifulSoup(html_source, 'html.parser')
    tweets_div = soup.find_all('div', {'class': 'css-1dbjc4n'})
    yapmama rağmen veri dönmüyor. Twitterdan veriyi nasıl çekebilirim? Taktik verebilecek birileri var mı?

    İyi forumlar
  • 10-04-2023, 18:17:39
    #2
    Üyeliği durduruldu
    Hocam sorunu chat gptye yazdırdım şunu dedi.





    Twitter'dan veri çekmek için en uygun yöntem, Twitter API'sini kullanmaktır. Selenium ve BeautifulSoup kullanarak web scraping yapmak, Twitter'ın hizmet koşullarına aykırı olabilir ve düşük performanslı bir çözüm sunar. Twitter API'sinde yaşadığınız sorunları çözmeye çalışarak başlayalım.
    1. API anahtarlarınızı kontrol edin: Twitter Developer hesabınızın API anahtarlarını ve erişim anahtarlarını doğru bir şekilde uygulamanıza eklediğinizden emin olun.
    2. Arama sorgusunu optimize edin: Arama sorgunuzun doğru ve belirli olduğundan emin olun. Özellikle, alakasız tweet'ler alıyorsanız, anahtar kelimelerinizi ve filtrelerinizi gözden geçirin.
    3. Sayfalama yönetimi: Twitter API'si, bir seferde belirli sayıda tweet döndürür. Daha fazla tweet almak istiyorsanız, sayfalama yönetimi yaparak sonraki sayfalardaki tweet'leri de almalısınız. 'next_token' değerini kullanarak sonraki sayfaya geçin.
    4. Rate Limiting: Twitter API, kullanıcılara belirli bir süre içinde yapabilecekleri istek sayısını sınırlar. Bu nedenle, çok fazla istek yapıyorsanız, kısa süreliğine engellenebilirsiniz. İstekleriniz arasında uygun süreler bırakarak rate limiting'i yönetin.
    Python'da Tweepy kütüphanesi ile Twitter API'sini kullanarak veri çekmek için örnek bir kod şablonu:
    import tweepy
    
    # API anahtarlarını ve erişim anahtarlarını girin
    consumer_key = 'YOUR_CONSUMER_KEY'
    consumer_secret = 'YOUR_CONSUMER_SECRET'
    access_token = 'YOUR_ACCESS_TOKEN'
    access_token_secret = 'YOUR_ACCESS_TOKEN_SECRET'
    
    # Tweepy ile OAuth1UserHandler kullanarak kimlik doğrulama yapın
    auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
    auth.set_access_token(access_token, access_token_secret)
    
    api = tweepy.API(auth)
    
    # Arama sorgusu ve sayfalama için tweetleri çekin
    query = "anahtar_kelime -filter:retweets"
    tweets = []
    for page in tweepy.Cursor(api.search, q=query, tweet_mode="extended", lang="tr", count=100).pages(5):
        tweets.extend(page)
    
    # Tweetleri yazdırın
    for tweet in tweets:
        print(tweet.full_text)
    Bu örnek kodu kullanarak, gerekli anahtar kelimeler ve filtrelerle arama sorgunuzu optimize ederek, doğru tweet'leri çekebilirsiniz. Ayrıca, sayfalama yönetimi ve rate limiting'i yöneterek verimli bir şekilde veri çekme işlemi gerçekleştirebilirsiniz.








  • 10-04-2023, 18:18:33
    #3
    GokhanCandan adlı üyeden alıntı: mesajı görüntüle
    Hocam sorunu chat gptye yazdırdım şunu dedi.





    Twitter'dan veri çekmek için en uygun yöntem, Twitter API'sini kullanmaktır. Selenium ve BeautifulSoup kullanarak web scraping yapmak, Twitter'ın hizmet koşullarına aykırı olabilir ve düşük performanslı bir çözüm sunar. Twitter API'sinde yaşadığınız sorunları çözmeye çalışarak başlayalım.
    1. API anahtarlarınızı kontrol edin: Twitter Developer hesabınızın API anahtarlarını ve erişim anahtarlarını doğru bir şekilde uygulamanıza eklediğinizden emin olun.
    2. Arama sorgusunu optimize edin: Arama sorgunuzun doğru ve belirli olduğundan emin olun. Özellikle, alakasız tweet'ler alıyorsanız, anahtar kelimelerinizi ve filtrelerinizi gözden geçirin.
    3. Sayfalama yönetimi: Twitter API'si, bir seferde belirli sayıda tweet döndürür. Daha fazla tweet almak istiyorsanız, sayfalama yönetimi yaparak sonraki sayfalardaki tweet'leri de almalısınız. 'next_token' değerini kullanarak sonraki sayfaya geçin.
    4. Rate Limiting: Twitter API, kullanıcılara belirli bir süre içinde yapabilecekleri istek sayısını sınırlar. Bu nedenle, çok fazla istek yapıyorsanız, kısa süreliğine engellenebilirsiniz. İstekleriniz arasında uygun süreler bırakarak rate limiting'i yönetin.
    Python'da Tweepy kütüphanesi ile Twitter API'sini kullanarak veri çekmek için örnek bir kod şablonu:
    import tweepy
    
    # API anahtarlarını ve erişim anahtarlarını girin
    consumer_key = 'YOUR_CONSUMER_KEY'
    consumer_secret = 'YOUR_CONSUMER_SECRET'
    access_token = 'YOUR_ACCESS_TOKEN'
    access_token_secret = 'YOUR_ACCESS_TOKEN_SECRET'
    
    # Tweepy ile OAuth1UserHandler kullanarak kimlik doğrulama yapın
    auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
    auth.set_access_token(access_token, access_token_secret)
    
    api = tweepy.API(auth)
    
    # Arama sorgusu ve sayfalama için tweetleri çekin
    query = "anahtar_kelime -filter:retweets"
    tweets = []
    for page in tweepy.Cursor(api.search, q=query, tweet_mode="extended", lang="tr", count=100).pages(5):
        tweets.extend(page)
    
    # Tweetleri yazdırın
    for tweet in tweets:
        print(tweet.full_text)
    Bu örnek kodu kullanarak, gerekli anahtar kelimeler ve filtrelerle arama sorgunuzu optimize ederek, doğru tweet'leri çekebilirsiniz. Ayrıca, sayfalama yönetimi ve rate limiting'i yöneterek verimli bir şekilde veri çekme işlemi gerçekleştirebilirsiniz.








    hocam ben de öyle yaptım ama yazdırdığı kod ile çekemedim veriyi maalesef
  • 10-04-2023, 18:19:52
    #4
    Üyeliği durduruldu
    Twitter API artık ücretli oldu, Twitter for Mac apisini deneyin.
  • 10-04-2023, 18:20:38
    #5
    DraxLeR adlı üyeden alıntı: mesajı görüntüle
    Twitter API artık ücretli oldu, Twitter for Mac apisini deneyin.
    tamamdır hocam çok teşekkür ederim
  • 11-04-2023, 14:55:59
    #6
    DraxLeR adlı üyeden alıntı: mesajı görüntüle
    Twitter API artık ücretli oldu, Twitter for Mac apisini deneyin.
    Hocam selam Yapabildin mi bende araştırma tezim için kullanmak istiyorum da yardımcı olursanız çok sevinirim.