最近,发现原来每天从网站获取的某个指数不是最新的,重新检查该指数的链接时,发现加入了一个参数(v=159#######),且这个数字会随着链接的刷新每次都不一样:
如果对计算机知识比较了解的朋友,可能能很快反应过来,这是一个时间戳,具体什么意思?我们来看一下官方正品的解析:时间戳是指格林威治时间1970年01月01日00时00分00秒起至当下的总秒数。
很多网站给链接加上的动态参数其实都是时间戳,或跟时间戳有比较直接的关系。
那么,在PQ里,如何得到时间戳呢?
根据概念,即1970年1月1日0时0分0秒至现在的总秒数,因此,这个计算其实非常简单,直接求可以用公式如下:
= Duration.TotalSeconds(
DateTime.LocalNow() - #datetime(1970,1,1,0,0,0)
)
其中DateTime.LocalNow()即为当下时间,减去1970年1月1日0时0分0秒后,得到当下与起点时间的时长,再通过Duration.TotalSeconds函数即可以直接转换为总秒数。
进一步,我们可以将时间转换为时间戳的需求写成一个通用的函数,也很简单(关于自定义函数的基础知识,可以参考文章《PQ-M及函数:结合前期案例,学习自定义函数》),如下图所示:
这样在以后需要用到的时候就可以直接通过调用TimeStamp这个函数来实现了。
- 聊聊网爬 -
我前期写过一些文章关于从网络爬取数据的,同时,在我的系列视频课程里,也有几集专门讲网爬的,包括如何识别数据源和相关参数等基础知识,但基本都仅涉及一些对公众开放的数据,一是这些数据爬取起来相对简单容易,二是爬取这些数据一般不会涉及到什么严重的法律问题。
很多朋友也在留言问我一些关于网爬的问题,因为如果能从自己关注的网站自动抓到想要的数据,那的确能给工作带来极大的便利——但是,绝大多数其实是非常困难的或者是存在较大的法律风险(有兴趣的朋友可以随便搜一下,案例很多)。
不要老是看那些python的广告说5分钟爬了别人多少数据,即使剔除法律风险的问题,这对于绝大绝大绝大部分的普通用户来说,是难以实现的,简单原因可以参考《别傻了!PQ都没学会,VBA都学不来,你能学好Python处理Excel?》。
所以,对于这些问题,我一般的回答是:
第一、如果真的觉得这个数据很有价值,很有必要,那么,去“买”吧!
第二、如果不想买又想拥有,去找一些“专业”的机构或人士帮忙吧!
把自己的时间和精力放在最合适的事情上才是最佳的选择。
本文分享自 Excel到PowerBI 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!