Как продолжать скачивать твиты с помощью пакета rtweet, а также использовать R Studio для других задач

Вы только что установили пакет 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-недельного периода. У меня такое ощущение, что если я буду продолжать загружать все твиты, содержащие слово "повреждение", у меня получится база данных, которая в несколько раз больше моей локальной памяти (но это также может быть ошибочно оценкой).

Заранее большое спасибо за вашу помощь!:)

2 ответа

Вам не нужен совсем другой компьютер. Вы можете иметь несколько экземпляров R и запускать их независимо. Ваш stream_tweets2 следует сохранить твиты в файл, который вы будете читать в другом случае.

У меня такая же ситуация, и мне удалось использовать другое скромное компьютерное устройство, например RasPberry 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 для передачи файлов на свой процессор-ноутбук. Вы также можете автоматически загружать потоковые данные в облако, если хотите.

PS: Установка R на raspberry pi 3 познакомит вас с еще несколькими ручными установками библиотеки для raspbian. С помощью официального репо почти только устанавливаю устаревшую версию R. Для меня 18 апреля 2018 года она может установить только R ver. 3.3.3

Другие вопросы по тегам