twitteR如何搜索两个主题标签

时间:2016-03-23 08:48:39

标签: r twitter hashtag

在这里输入代码是否可以在一个searchTwitter命令中查找两个不同的hastags?

实施例

my_h <-  as.POSIXlt(Sys.time())
my_h <- strptime(my_h, format = "%Y-%m-%d %H:%M:%S", tz = "CET")

hrs <- function(u) {
  x <- u * 3600
  return(x)
}
my_h <- my_h - hrs(24)
my_h <- data.frame(day = strptime(my_h, "%Y-%m-%d", tz = ""))

我想寻找hastags #dn#park 我可以单独完成,如下所示

tweets<-twListToDF(searchTwitter("#dn", n=5000, since = as.character(my_h$day)))
write.table(tweets, "all_dn_tweets.csv", row.names = F, append = T, sep = ";", col.names = F)

tweets<-twListToDF(searchTwitter("#park", n=5000, since = as.character(my_h$day)))
write.table(tweets, "all_park_tweets.csv", row.names = F, append = T, sep = ";", col.names = F)

问题是这两者是否可以合二为一?

2 个答案:

答案 0 :(得分:1)

尝试这样的事情

hashtags <- c("#metallica", "#slayer")
needle <- paste(hashtags, collapse = " OR ")
tweets <- searchTwitter(needle, n = 10)
df <- twListToDF(tweets)
for (hashtag in hashtags) {
  write.csv(df[grep(hashtag, tolower(df$text), fixed = TRUE), ], paste0(hashtag, ".csv"))
}

在推文上使用tolower可能需要一些错误处理 - 您可以在网上找到大量的信息。

答案 1 :(得分:1)

我发现here的答案更加优雅。对于目前的情况,它基本上是

hashtags <- '#metallica + #slayer'
tweets <- searchTwitter(hashtags, n = 10, lang = 'en', retryOnRateLimit = 100) 
tweetsDF <- twListToDF(tweets)