2014-11-12 20 views
15

Tôi đang sử dụng API Tweepy để trích xuất nguồn cấp dữ liệu Twitter. Tôi muốn trích xuất tất cả các nguồn cấp dữ liệu Twitter của một ngôn ngữ cụ thể mà thôi. Bộ lọc ngôn ngữ chỉ hoạt động nếu bộ lọc track được cung cấp. Các mã sau trả 406 lỗi:Chỉ lọc nguồn cấp dữ liệu Twitter theo ngôn ngữ

l = StdOutListener() 
auth = OAuthHandler(consumer_key, consumer_secret) 
auth.set_access_token(access_token, access_token_secret) 
stream = Stream(auth, l) 
stream.filter(languages=["en"]) 

Làm thế nào tôi có thể trích xuất tất cả các tweets từ ngôn ngữ nhất định sử dụng Tweepy?

+0

Bạn đã giải quyết được vấn đề này chưa. Tôi cũng muốn trích xuất tweet ngôn ngữ cụ thể như tiếng Nhật. – tktktk0711

Trả lời

19

Bạn không thể (không có quyền truy cập đặc biệt). Phát trực tuyến tất cả các tweet (chưa được lọc) yêu cầu kết nối tới the firehose, chỉ được cấp trong các trường hợp sử dụng cụ thể của Twitter. Thành thật mà nói, firehose là không thực sự cần thiết - sử dụng thích hợp của track có thể giúp bạn có được nhiều tweets hơn bạn biết phải làm gì với.

Hãy thử sử dụng một cái gì đó như thế này:

stream.filter(languages=["en"], track=["a", "the", "i", "you", "u"]) # etc 

lọc bởi những lời nói như thế sẽ giúp bạn có nhiều, rất nhiều tweet. Nếu bạn muốn dữ liệu thực cho những từ được sử dụng nhiều nhất, hãy xem bài viết này từ Thời gian: The 500 Most Frequently Used Words on Twitter. Bạn có thể sử dụng các từ khóa up to 400, nhưng điều đó có thể sẽ tiếp cận giới hạn 1% của các tweet ở một khoảng thời gian nhất định. Nếu thông số track của bạn phù hợp với 60% tất cả các tweet vào một thời điểm nhất định, bạn sẽ vẫn chỉ nhận được 1% (là rất nhiều tweet).

+0

Cảm ơn !! Tôi đã nhập 'stream.filter (lang = [" vi "], track = [" something "])' – Krishh

2

Khác với nhận tweets lọc trực tiếp, bạn có thể lọc nó sau khi nhận được tất cả các tweet của các ngôn ngữ khác nhau bằng cách:

tweets = api.search("python") for tweet in tweets: if tweet.lang == "en": print(tweet.text) #Do the stuff here

Hy vọng nó giúp.

Các vấn đề liên quan