刚刚安装了rtweet软件包并开始下载推文。我希望在接下来的20周内收集包含“腐败”一词的推文。然而,推文的流式传输和下载使R忙,我无法将其用于其他任务。有没有办法停止流媒体并再次继续,在我离开的时间点接听?
我当前的代码看起来像这样,效果很好:
library(rtweet)
consumer_key <- "xxxxxxxxxxx"
consumer_secret <- "xxxxxxxxx"
create_token(app = "xxxxx", consumer_key, consumer_secret, set_renv = TRUE)
twentyweeks <- 60L * 60L * 24L * 7L * 20L
corruption <- "Corruption"
stream_tweets2(q = corruption, parse = FALSE, timeout = twentyweeks, dir = "corruption-stream", append = TRUE)
rt <- parse_stream("stream-1.json")
另一个相关的问题是,如果我可以在这20周的时间内每天随机抽取一些推文。我觉得如果我继续下载包含“腐败”一词的所有推文,我最终会得到一个比我本地内存大几倍的数据库(但这也可能是一个非常错误的估计)。
非常感谢您的帮助! :)
答案 0 :(得分:0)
我有相同的情况,并通过使用另一个适度的计算机设备,即覆盆子pi 3来管理,仅流和存储Twitter数据。我只需要安装R软件和rtweet包。然后我source()
我的脚本使用:
`stream_tweets2(
q = "your,keywords,please",
#languange = "id", # not really works
parse = FALSE,
timeout = 7L * 24L * 60L * 60L,
dir = "/your/dir/path/here",
append = T # arg will append new file for every 10.000
# tweets streamed with a different file name
)`
因为文件将被存储为每10 000条推文,我将获得几个文件,我可以为下一次处理进行采样。目前,我使用我的VNC将文件传输到我的处理笔记本电脑。如果您愿意,您还可以设法自动将流数据上传到云端。
P.S: 在raspberry pi 3上安装R将遇到更多用于raspbian的手动库安装。 使用官方repo几乎只安装一个过时的R版本。对于我2018年4月18日,它只能安装R版本。 3.3.3
答案 1 :(得分:0)
您不需要一台其他计算机。您可以有多个R实例并独立运行它们。您的stream_tweets2
应该将推文保存到另一个实例中将要读取的文件中。