Вопрос

У меня есть некоторые проблемы с Tweepy API.

Я просто пытаюсь написать небольшое приложение, которое заставляет меня поток статусов одного пользователя (руда больше), но можно было бы хорошо, чтобы начать с ;-)

Теперь: мой код такой:

    def main():
       config = ConfigParser.ConfigParser()
       config.read('twitter.cfg')

       username = config.get('Twitter', 'username')
       password = config.get('Twitter', 'password') 
           listener = StreamWatcherListener()

       stream = tweepy.Stream(username, password, listener, timeout=None)
       stream.filter('132897940')

В StreamwatcherListener у меня есть метод «On_Status», который печатает текст статуса, когда приходит новый (все, кажется, работает, когда я пробую поток.

Данный идентификатор - мой testaccount, поэтому всякий раз, когда я твит, я должен получить ответ на консоли .... Но ничего не происходит.

Когда я попробую

curl -d @following http://stream.twitter.com/1/statuses/filter.json -uAnyTwitterUser:Password

В терминале, как я мог найти в Twitter API, все работает нормально.

Так что, возможно, я неправильно использую фильтр () - метод?

какие-либо предложения?

-Энди

Это было полезно?

Решение

Я нашел это

то stream.filter() Метод нуждается в массиве

так что я должен был кодировать

stream.filter(['1234567'])

и вуаля

Другие советы

class TweetListener(StreamListener):
    def on_status(self,status):           
        print "TWEET ARRIVED!!!"
        print "Tweet Text : %s" % status.text
        print "Author's name : %s" % status.author.screen_name
        print "Time of creation : %s" % status.created_at
        print "Source of Tweet : %s" % status.source    
        time.sleep(10)       
        return True

    def on_error(self, status):        
       print status
       if status == 420:
            print "Too soon reconnected, Exiting!!"
            return False
        sys.exit()

def search_tweets():
    twitterStream = Stream(connect().auth, TweetListener())        
    twitterStream.filter(track=['Cricket','Maths','Army','Sports'],languages = ["en"],async=True)

Здесь я использовал асинхронный параметр, он запускает каждый поток на другой поток. Считайте это связь для документирования или более подробной информации.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top