r - 通过 rtweet 获取多个 Twitter 用户的关注者
问题描述
我正在使用 Michael W. Kearney 的 rtweet 包,并试图获取多个用户的关注者列表。到目前为止,如果我希望一次废弃一个用户的追随者,而不管他/她可能拥有多少追随者,它的效果很好。
但是对于我的项目,我必须废弃 155 个配置文件,因此我想知道是否有一种功能或方法可以让我为所有用户编写一个命令?到目前为止,当我尝试使用多个用户时,我收到错误消息说我一次只能使用一个用户。
编辑:两条重要的信息 - 所需的输出是每个用户关注者的 155 列的数据集,我可以将其导出/写入为 csv 或用作数据框。最后,在提出任何解决方案时,请记住,如果我要使用任何apply
家庭功能,我最终会得到列表(根据 Amar 的建议答案),但问题是将列表转换为 data.frame 并且因为列的长度不等我无法使用as.data.frame()
函数。
有什么想法或方法吗?提前致谢。
解决方案
使用for
循环或apply
完成工作。创建该包是为了通过提供执行一项特定工作(通常反映 API)的函数来简化您与 twitter API 之间的交互。其余的(如你的请求)由 R 和其他包填写。
(我在这里关注本教程:)
假设您有一个要在向量中抓取的配置文件列表:
profiles <- c("Batman", "CatWomen", "Blade")
我们可以创建一个自定义函数来检索以下 3 profiles
:
getAllFollowers <- function(name) {
## how many total follows does cnn have?
cnn <- lookup_users(name)
## get them all (this would take a little over 5 days)
getAllFollowers <- function (name) {
user_info <- lookup_users(name)
user_follower <- get_followers(name, n=user_info$followers_count, retryonratelimit = T)
Sys.sleep(2) #sleep for 2 seconds
return(user_follower) }
然后我们可以使用它lapply
来遍历列表profiles
并检索它们的以下内容:
out <- lapply(X = profiles, FUN = getAllFollowers)
这将创建一个list
对象(从阅读中):
关注者 ID 的 tibble 数据框(一列名为“user_id”)。
推荐阅读
- java - Spring Boot 日志记录覆盖颜色
- arduino - 简易HC-05蓝牙安卓通讯
- python - 如何在没有行网格的python中在reportlab中创建表?
- c++ - VSC Ubuntu 20.04 中的“不允许使用属性控制台”问题
- google-sheets - Google Sheets Countif range is greater than range
- c - How to work around compiler built-in types in C standard header files
- java - How to get date from a string without formatting?
- javascript - how i can write a component without error in syntax certainly inside (return) ,,i have problem with a jsx
- mysql - How to insert multiple row with different ID in Laravel
- angular - How to fetch specific JSON data in Angular