0

私たちの会社は、ランダムなユーザーが入力したデータのすべてのライブ ストリームを読み取ろうとしています。つまり、ランダムなユーザーが「ABC 会社」というツイートを送信します。

Twitter クライアントを使用して上記のテキストを検索する方法を見て、クライアントを使用せずにツイートを送信するすべてのツイートを集約する、つまりハッシュタグを使用せずにライブでストリーミングしてファイルすることが可能であるという仮定の下で作業します。

これを行う最善の方法は何ですか?以前にこれを行ったことがある場合は、スクリプトを共有できますか? 最も簡単な方法は、Ruby/Python スクリプトを実行したままにすることだと思いますが、Ruby/Python についての私の理解はせいぜい限られています。

助けてください?

4

1 に答える 1

0

最低限のことは次のとおりです。

#!/usr/bin/python
# -*- coding: utf-8 -*-
import twitter
from threading import *
from os import _exit, urandom
from time import sleep
from logger import *
import unicodedata

## Based on: https://github.com/sixohsix/twitter

class twitt(Thread):
    def __init__(self, tags = None, *args, **kwargs):
        self.consumer_key = '...' 
        self.consumer_secret = '...'
        self.access_key = '...'
        self.access_secret = '...'

        self.encoding = 'iso-8859-15'

        self.args = args
        self.kwargs = kwargs

        self.searchapi = twitter.Twitter(domain="search.twitter.com").search

        Thread.__init__(self)
        self.start()

    def search(self, tag):
        try:
            return self.searchapi(q=tag)['results']
        except:
            return {}

    def run(self):
        while 1:
            sleep(3)

それを使用するには、次のようにします。

if __name__ == "__main__":
    t = twitt()
    print t.search('#DHSupport')
    t.alive = False

注: これがスレッド化されている唯一の理由は、これは私が他のプロジェクトのために用意したコードの一部にすぎないためです。API を操作する方法や、Twitter で検索結果を取得するためのバックグラウンド サービスを構築する方法がわかります。元のコードには多くのがらくたがあるため、構造が少し奇妙に見えるかもしれません。検索だけでは consumer_keys などは実際には必要ありませんが、メッセージの投稿やチェックなどのその他の機能には OAuth ログインが必要になることに注意してください。

本当に必要なものは次の 2 つだけです。

import twitter
print twitter.Twitter(domain="search.twitter.com").search(q='#hashtag')['results']
于 2013-04-30T16:35:56.067 に答える