我一直在使用twitteR软件包的searchTwitter函数来推送推文,但我看到很多都被截断了。考虑到这一点,我发现有一个参数,tweet_mode =' extended',可以传递给API以防止截断。这在他们的论坛上描述:
https://twittercommunity.com/t/retrieve-full-tweet-when-truncated-non-retweet/75542/8
此函数的文档说明GET的其他参数可以作为额外的省略号参数传递。这是链接:
https://www.rdocumentation.org/packages/twitteR/versions/1.1.9/topics/searchTwitter
但是,当我尝试此操作时,会发生以下错误:
tweets <- searchTwitter("somesearchtext", n = 10, lang = "en",
tweet_mode='extended')
Error in tw_from_response(out, ...) :
unused argument (tweet_mode = "extended")
你们有没有想过这个或找到了解决方法?我花了很长时间搜索这个,但找不到任何答案,说明为什么这在twitteR软件包中不起作用。
感谢您的时间。
答案 0 :(得分:3)
在searchTwitter()
的源代码中,似乎不是tweet_mode
的参数。
但是,您应该注意到twitteR
库been deprecated支持rtweet
来自Github自述文件:
这是twitteR相对悠闲的弃用期的开始,赞成使用rtweet。请开始寻找切换到该包。如果您有任何问题,请联系我自己或@mkearney
search_tweets
中的rtweet
函数通过...
在这种情况下,存在参数full_text
(defaults to TRUE)。当此设置为TRUE时,它会将Twitter API的tweet_mode
参数设置为“扩展”。所以你应该默认看到扩展的推文
search_tweets
的源代码显示了您可以传递的其他参数
https://github.com/mkearney/rtweet/blob/d81527588f578cbe984af7a29235503ca66b5a24/R/search.R#L456
if (full_text) {
full_text <- "extended"
} else {
full_text <- NULL
}
## make params list
params <- list(q = q,
result_type = type,
count = 100,
max_id = max_id,
tweet_mode = full_text,
geocode = geocode,
...)
## make url
url <- make_url(
query = query,
param = params)
所以你的搜索功能应该按原样运作
library(rtweet)
rt <- search_tweets("data science", n = 1000)