首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Safari History.db history_visits.visit_time的格式是什么?

Safari History.db history_visits.visit_time的格式是什么?
EN

Stack Overflow用户
提问于 2015-12-08 22:09:18
回答 3查看 9.4K关注 0票数 11

当查看Safari中的History.db时,有一个名为history_visits的表,它有一个名为visit_time的列,它是一个REAL值。它具有诸如470799793.096987之类的值。那是什么格式的?我想看到它的格式,如12/08/2015 05:12:05。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-12-31 12:29:12

这是2001年1月1日协调世界时00时以来的秒数。它一定是来自一个NSDate

NSDate对象封装一个时间点,独立于任何特定的日历系统或时区。Date对象是不可变的,表示相对于绝对引用日期(2001年1月1日UTC 00:00:00)的固定时间间隔。 - NSDate Class Reference

要从中获得一个体面的人的价值,您必须添加978307200 ( 2001-01-01 00:00:00的时代)。

此查询应该为您提供所需的内容:

代码语言:javascript
运行
复制
.headers on

select datetime(v.visit_time + 978307200, 'unixepoch', 'localtime') as date, v.visit_time + 978307200 as epoch, v.visit_time, i.domain_expansion, i.url
from history_items i left join history_visits v on i.id = v.history_item
order by i.id desc
limit 100;

示例输出:

代码语言:javascript
运行
复制
date|epoch|visit_time|domain_expansion|url
2015-12-31 11:51:27|1451562687.28465|473255487.284646|duckduckgo|https://duckduckgo.com/?q=current+timestamp+2015-12-31+11:51&t=osx

PS:仅供将来参考,Safari文件位于~/Library/Safari/History.db

票数 26
EN

Stack Overflow用户

发布于 2018-04-02 19:21:46

若要在excel扩展表中转换history.db中的history.db值,请在诸如DB for SQLLite (SQLLite)之类的工具中打开history.db文件,并将history_visits值导出到CSV文件。

打开CSV文件并创建一个列,在该列中,您将在调整到时区的人类可读的时间内填充值,并使用以下公式转换您的NSDate:

代码语言:javascript
运行
复制
=((((C2+978307200)/60)/60)/24)+DATE(1970,1,1)+(-5/24)

在上面的公式中,时间值在单元格C2和my GMT-5中。若要调整到您自己的时区,请调整最后一组括号中的语句。目前我有(-5/24)来代表GMT-5

当我第一次接近这个转换时,我错误地认为history.db中的时间是一个划时代的时间,从1/1/1970开始,我不明白为什么会有这样的时间偏差。添加所需的转换因子+978307200解决了这一问题。

票数 0
EN

Stack Overflow用户

发布于 2021-03-15 23:39:55

在某些情况下,我发现domain_expansion字段为null,下面是一个修改后的查询:

代码语言:javascript
运行
复制
SELECT SUBSTR(
SUBSTR(url, INSTR(url, '/')+2),
1,
INSTR(SUBSTR(url, INSTR(url, '/')+2),'/') - 1
) domain,
url,
datetime(hv.visit_time + 978307200, 'unixepoch', 'localtime') visit_time 
FROM history_items hi
JOIN history_visits hv on hi.id = hv.history_item;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34167003

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档