2013-08-19 2 views
1

저는이 질문에 올바른 방향을 제시하기 위해 Python을 처음 사용합니다. 내가 원하는 것은 내 트위터 핸들에 전송 된 쿼리에 자동으로 응답하는 애플리케이션을 작성하는 것이다. 나는 이것을 위해 Tweepy를 사용하고있다.Python-Tweepy 설치

  1. 이 빌드 자동 회신
  2. 포스트
트위터에 대한 답변을 트윗을 수집하고
  • 그것을 분석 내 핸들의 언급이있는 모든 트윗을 들어 다음과 같이 나의 단계는

    2 단계와 3 단계에서 일부 웹 서비스를 연결하고 JSON 응답을 반환해야합니다.

    제 질문은 올바른 설정에 관한 것입니다. 여러분은 독립형 Tweepy 어플리케이션이 프로덕션 레벨에서 이것을 처리 할 수 ​​있다고 생각합니까? 아니면 이것에 대한 서버 구현을 위해 가야합니까? 만약 그것이 두 번째라면 사람들이 저에게 어떻게 할 수있는 링크를 가르쳐 주시겠습니까? 저는 Python을 처음 접했습니다. 난 당신이 "@yourhandle"에 대한 검색 필터를 편집 할 수 있습니다 here을 발견 예를 스트리밍 tweepy 사용

  • 답변

    1

    .

    class CustomStreamListener(tweepy.StreamListener): 
        def on_status(self, status): 
         print status.text 
         print status.user.screen_name #<----------------THIS LINE 
    

    당신을 트위터 사람을 보여줍니다 :

    당신은 추가하여 트윗 사람에 액세스 할 수 있습니다. 당신은을 만들어야합니다

    import tweepy 
    consumer_key = "xxx" 
    consumer_secret = "xxx" 
    access_key = "xxx" 
    access_secret = "xxx" 
    
    auth = tweepy.OAuthHandler(consumer_key, consumer_secret) 
    auth.set_access_token(access_key, access_secret) 
    api = tweepy.API(auth) 
    
    class CustomStreamListener(tweepy.StreamListener): 
        def on_status(self, status): 
         print status.text 
         print status.user.screen_name 
         api.update_status("Insert Auto Reply Text Here", in_reply_to_status_id = status.id) 
    
        def on_error(self, status_code): 
         print >> sys.stderr, 'Encountered error with status code:', status_code 
         return True # Don't kill the stream 
    
        def on_timeout(self): 
         print >> sys.stderr, 'Timeout...' 
         return True # Don't kill the stream 
    
    sapi = tweepy.streaming.Stream(auth, CustomStreamListener()) 
    sapi.filter(track=['@rishi']) 
    

    : 같은

    status.id 
    

    코드가 같아야합니다

    api.update_status("my update", in_reply_to_status_id = tweetid) 
    

    트윗 ID를 사용하여 입수 할 수 있습니다 : 당신은 다음의 사용 상태를 업데이트 할 수 있습니다 dev 트위터 계정이 작동하고 자신의 보안 토큰을 입력하십시오. 저는 현재 광산이 읽기 전용이기 때문에 타임 라인에 테스트 쓰기를 할 수 없습니다.