无论如何要提高推特的挖掘速度?
Anyway to increase twitter mining speed?
我正在进行 tweepy 挖矿操作,但发现需要相当长的时间才能获得大量推文。粗略估计大约 3-4 小时内将有 3000 条推文——我的目标是在两天内达到 100 万条。类似的查询表明它可以 "just be your machine," 但我希望得到更具体的答案。
如果我使用一些高级服务器托管服务,我能加快速度吗?抱歉,没有计算机科学背景。下面是我的代码:
from tweepy import Stream
from tweepy.streaming import StreamListener
class MyListener(StreamListener):
def on_data(self, data):
try:
with open('python2.json', 'a') as f:
f.write(data)
return True
except BaseException as e:
print(Error)
return True
def on_error(self, status):
print(status)
return True
twitter_stream = Stream(auth, MyListener())
twitter_stream.filter(track=['#happy'])
谢谢!
您正在使用 Stream 函数,所以假设您收到了 real-time 条带有#happy 标签的推文。您可以获得数据的 rapidity 还取决于目前有多少人使用此主题标签发推文。
如果我从你的问题中很好地理解了,你将获得推文进行一些分析。如果是,我认为您可以使用旧推文。
为此,您可以采用两种不同的方式:
- 使用 tweepy api(不是流媒体)
- 使用GetOldTweets-python库
我建议您使用第二个,因为允许在没有 rate-limits 的情况下获取推文。
下面是一个示例,可以使用 GetOldTweets-python 库来执行您在问题中尝试执行的操作:
tweetCriteria = got3.manager.TweetCriteria().setQuerySearch('#happy').setSince("2016-05-01").setMaxTweets(3000)
tweets = got3.manager.TweetManager.getTweets(tweetCriteria)
for idx, tweet in enumerate(tweets):
data[idx] = tweet.text
with open('python2.json', 'w') as outfile:
json.dump(data, outfile, indent=4)
使用此代码,我在 0:02:58.617514 中收到了 3000 条带有#happy 标签的推文。
Here,你可以找到一个完整的工作示例。
请随时与我联系以进行澄清。
告诉我。
我正在进行 tweepy 挖矿操作,但发现需要相当长的时间才能获得大量推文。粗略估计大约 3-4 小时内将有 3000 条推文——我的目标是在两天内达到 100 万条。类似的查询表明它可以 "just be your machine," 但我希望得到更具体的答案。
如果我使用一些高级服务器托管服务,我能加快速度吗?抱歉,没有计算机科学背景。下面是我的代码:
from tweepy import Stream
from tweepy.streaming import StreamListener
class MyListener(StreamListener):
def on_data(self, data):
try:
with open('python2.json', 'a') as f:
f.write(data)
return True
except BaseException as e:
print(Error)
return True
def on_error(self, status):
print(status)
return True
twitter_stream = Stream(auth, MyListener())
twitter_stream.filter(track=['#happy'])
谢谢!
您正在使用 Stream 函数,所以假设您收到了 real-time 条带有#happy 标签的推文。您可以获得数据的 rapidity 还取决于目前有多少人使用此主题标签发推文。
如果我从你的问题中很好地理解了,你将获得推文进行一些分析。如果是,我认为您可以使用旧推文。
为此,您可以采用两种不同的方式:
- 使用 tweepy api(不是流媒体)
- 使用GetOldTweets-python库
我建议您使用第二个,因为允许在没有 rate-limits 的情况下获取推文。
下面是一个示例,可以使用 GetOldTweets-python 库来执行您在问题中尝试执行的操作:
tweetCriteria = got3.manager.TweetCriteria().setQuerySearch('#happy').setSince("2016-05-01").setMaxTweets(3000)
tweets = got3.manager.TweetManager.getTweets(tweetCriteria)
for idx, tweet in enumerate(tweets):
data[idx] = tweet.text
with open('python2.json', 'w') as outfile:
json.dump(data, outfile, indent=4)
使用此代码,我在 0:02:58.617514 中收到了 3000 条带有#happy 标签的推文。
Here,你可以找到一个完整的工作示例。
请随时与我联系以进行澄清。
告诉我。