我需要将来自Twitter流媒体API的所有tweets实时保存到数据库中,当然,要过滤掉特定的单词列表。我通过使用tweetstream,在调用FilterStream()之前定义列表单词:
words = ["word1","two words","anotherWord"]
我想做的是能够添加/更改/删除这些值,而不停止脚本。为此,我创建了一个纯文本文件,其中包含要过滤掉的单词,并用换行符隔开。使用这段代码,我得到了一个完美的列表:
^{pr2}$我让这些行在它开始的时候工作,但我需要它在每次检查流时都这样做。有什么想法吗?在
也许这样的方法会奏效:
words集合是一个全局的,在过滤器运行时每隔几秒钟刷新一次。在
您可以在一个线程中读取更新的单词列表,并在另一个线程中使用
Queue
进行通信来处理tweet。在示例:
读取tweets的线程:
读单词的线程:
^{pr2}$主脚本可能看起来像:
您可以使用
inotify
或类似方法来监视'words.txt'
文件的更改,而不是轮询。在相关问题 更多 >
编程相关推荐