簡體   English   中英

我怎樣才能獲得爬行推文的時間? 或抓取特定時間段的推文

[英]How can I get the time of a crawled tweet ? Or crawl tweets for a specific time period

我正在嘗試使用以下代碼抓取推文:

library("twitteR")
library("ROAuth")

consumer_key <- '###'
consumer_secret <- '###'
access_token <- '###'
access_token_secret <- '###'

setup_twitter_oauth(consumer_key, consumer_secret, access_token, access_token_secret)

search_string <- URLencode("#stackoverflow")
no_of_tweets <- 2
tweets <- searchTwitter(search_string, n = no_of_tweets, lang="fr")
tweets

它運行良好,但我得到以下格式的結果:

[[1]]
[1] "Account: content of the tweet which contains #stackoverflow"

[[2]]
[1] "Another_account: content of that other tweet which contains #stackoverflow"

這很好,但我還想檢索發送推文的時間。 這可能嗎?

或者,如果我可以在我的 API 調用中發送一個時間段,我會沒事的。 我知道可以約會,例如:

search_string <- URLencode("#stackoverflow since:2017-01-04 until:2017-01-05")

但我找不到比一天更精確的方法。 這不起作用:

search_string <- URLencode("#stackoverflow since:2017-01-04T10:00:00 until:2017-01-04T10:30:00")

關於如何實現其中任何一個的任何想法?

我們可以使用函數twListToDF將對象轉換為帶有詳細信息的數據幀。

tweets <- searchTwitter("#stackoverflow", n = 2, lang="fr")
tweetsDF <- twListToDF(tweets)

現在,要獲取推文的時間,請查看已created列,該列將為您提供發送推文的時間。

要獲取具有特定持續時間的推文,我們可以使用searchTwitter函數中的sinceuntil參數

例如 -

searchTwitter("#stackoverflow",since = "2016-01-10" until = "2016-01-12")

這將為您提供這些日期之間的推文。

sinceuntil只輸入格式YYYY-MM-DD

如果我們需要根據時間對推文進行子集,我們可以使用相同的created

tweetsDF[tweetsDF$created > as.POSIXct("2017-01-04 10:00:00") & 
                            tweetsDF$created > as.POSIXct("2017-01-04 10:30:00"),]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM