[英]What is the reason for this error and how can I fix it?
我不确定为什么会收到此错误。 我正在尝试输入一个时间,其中告诉 twitter API 到 stream 需要多长时间。 我收到错误消息,但不知道如何解决。
Traceback (most recent call last):
File "streamobjecttest.py", line 1, in <module>
import StatusStream
File "/Users/yaminhimani/Desktop/tweetybird/StatusStream.py", line 68, in <module>
twitterStream = Stream(auth=auth, listener=StatusStream(),tweet_mode='extended')
TypeError: __init__() takes exactly 2 arguments (1 given)
stream.py 文件
from tweepy.streaming import StreamListener
from tweepy import OAuthHandler
from tweepy import Stream
import time
import Tweet
import DatabaseInteractor
import twitter_credentials
class StatusStream(StreamListener):
def __init__(self, timeLimit):
self.start_time = time.time()
self.timeLimit = timeLimit
super(StatusStream, self).__init__(timeLimit)
def on_status(self, status):
if (time.time()- self.start_time < self.timeLimit):
print(status.text)
def on_error(self, status):
print(status)
return False
auth = OAuthHandler(twitter_credentials.API_KEY,twitter_credentials.API_SECRET_KEY)
auth.set_access_token(twitter_credentials.ACCESS_TOKEN,twitter_credentials.ACCESS_TOKEN_SECRET)
twitterStream = Stream(auth=auth, listener=StatusStream(),tweet_mode='extended')
twitterStream.filter(track=["plumber","visa","bathtub"])
不同的.py文件
import StatusStream
import Tweet
stream= StatusStream.StatusStream(20)
尝试
class StatusStream(StreamListener):
def __init__(self, timeLimit):
self.start_time = time.time()
self.timeLimit = timeLimit
super().__init__(timeLimit)
这将在 Python 3 中工作。您的语法适用于 Python 2。此外,IDK 如果 StreamListener 初始化 timeLimit,因此您可能需要也可能不需要在 init 中传递 timeLimit。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.