【问题标题】:Setup for Python-TweepyPython-Tweepy 的设置
【发布时间】:2013-08-19 21:58:39
【问题描述】:

我是 Python 新手,所以这个问题是为了找到正确的方向。我想做的是编写一个自动回复发送到我的 Twitter 句柄的查询的应用程序。我为此使用 Tweepy。我的步骤如下:

  1. 收听任何提到我的手柄的推文​​
  2. 收集推文并分析它
  3. 构建自动回复
  4. 在 Twitter 上回复

我必须为第 2 步和第 3 步连接一些 Web 服务并返回 JSON 响应。

我的问题是关于正确的设置。你们认为独立的 Tweepy 应用程序能够在生产级别处理这个问题吗?或者我应该为此进行一些服务器实现吗?如果它是第二个,你们能指出我如何做到这一点的一些链接吗?我对 Python 很陌生。

【问题讨论】:

    标签: python tweepy


    【解决方案1】:

    使用 tweepy 流式传输我找到的示例 here 您可以编辑过滤器以搜索“@yourhandle”。

    您可以通过添加以下内容来访问发推文的人:

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

    会显示给你发推文的人。接下来您可以尝试使用以下方法更新状态:

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

    推文 ID 可以使用:

    status.id
    

    代码应如下所示:

    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'])
    

    您需要创建一个dev twitter 帐户才能使用并输入您自己的安全令牌。我目前无法测试写入时间线,因为我的是只读的。

    【讨论】:

      猜你喜欢
      • 2013-01-19
      • 2018-05-30
      • 1970-01-01
      • 1970-01-01
      • 2017-06-04
      • 1970-01-01
      • 1970-01-01
      • 2018-09-02
      • 2017-12-14
      相关资源
      最近更新 更多