我正在开发一个将所有Facebook和短信组织成一个可搜索,可分析,可打印界面的应用程序。第一部分是连接到Facebook API,这很容易。第二部分是连接到OSX中的chat.db SQLite数据库... R中包含所有内容,但是我无法将chat.db日期转换为可读格式。
这是我到目前为止编写的代码:
setwd('/Users/****/Library/Messages')
require(RSQLite)
filename <- "chat.db"
sqlite.driver <- dbDriver("SQLite")
db <- dbConnect(sqlite.driver,
dbname = filename)
## Some operations
dbListTables(db)
message <- dbReadTable(db,"message")
handle <- dbReadTable(db,"handle")
chat <- subset(message, message$handle_id == 40 | message$handle_id == 8)
colnames <- c('text', 'date' , 'is_from_me')
chat <- chat[colnames]
for (i in 1:nrow(chat)){
if (chat$is_from_me[i] == 1)
{chat$sender[i] <- 'Sent'}
else if (chat$is_from_me[i] == 0)
{chat$sender[i] <- 'Received'}
}
chat$type <- "Text Message"
colnames <- c('is_from_me')
chat <- chat[-3]
我尝试的第一件事与我使用facebook API尝试的完全相同。它可以通过转换后的JSON文件与该API一起使用,但是.db文件的运气却不尽相同:
test <- as.POSIXct(chat$date/1000, origin = '1970-01-01' )
我不确定.db文件的来源,但是我只是要运行上面的代码,以查看结果是否有意义……不是