还有另外一个问题,我准备处理的,但没有想好怎么处理——关于发布时间的
你转换的发布时间,存的是 Unix 时间戳,基于 UTC,这样,国内很多站点,时间上就会差 8 小时。不过,如果基于本地时区,国外的网站时间可能又会有问题。有没有可能默认使用本地时区,如果网页内容全英文,再使用 UTC 时区?
这个确实有问题, 但是没有好的方法解决, 我目前处理的都是国内资讯,基于本地timezone解析 和 反解析的话,没有8小时差异的, 但是一些非国内的资讯, 不一定都是标准UTC时区的, 所以没有很好的解决方法, 除非html里面暴露了 站点所在的时区?
一些国外文章的正则 , 比如 Kate Springer, CNN • Published 18th July 2017 我也还没兼容..
你给的例子 https://www.leiphone.com/news/201602/DsiQtR6c1jCu7iwA.html ,网站显示的发布时间是 2016-02-17 18:05,但解析出来的 unix timestamp 是 1455732300,按本地时区,应该是 1455703500
是有偏差的, 因为没有好的解决方法, 所以就不解决了, 所以在业务端暂时是约定了都用UTC,不考虑国家的时区 ( 我目前的做法是 在不知道具体时区的情况下, unix时间戳都基于 UTC, 虽然和实际的时间戳有8小时的差距, 只要转出的时候也用UTC, 显示的时间就和发布时间一致了)
我觉得一个好的解决方法是将站点的时区 记录下来, 站点发布的文章都基于这个时区来转unix 和 反转时间字符串, 这个可能要业务具体去做了, html里面信息量没有包含时区, 程序自动判断可能不太好
是一个办法 👍
这个issue先保留,后面有其他方法再沟通