前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >网抓没取到最新数据?很可能是少了这个参数!

网抓没取到最新数据?很可能是少了这个参数!

作者头像
大海Power
发布2021-08-31 11:34:47
3760
发布2021-08-31 11:34:47
举报
文章被收录于专栏:用户8950297的专栏

最近,发现原来每天从网站获取的某个指数不是最新的,重新检查该指数的链接时,发现加入了一个参数(v=159#######),且这个数字会随着链接的刷新每次都不一样:

如果对计算机知识比较了解的朋友,可能能很快反应过来,这是一个时间戳,具体什么意思?我们来看一下官方正品的解析:时间戳是指格林威治时间1970年01月01日00时00分00秒起至当下的总秒数。

很多网站给链接加上的动态参数其实都是时间戳,或跟时间戳有比较直接的关系。

那么,在PQ里,如何得到时间戳呢?

根据概念,即1970年1月1日0时0分0秒至现在的总秒数,因此,这个计算其实非常简单,直接求可以用公式如下:

代码语言:javascript
复制
 = 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?》。

所以,对于这些问题,我一般的回答是:

第一、如果真的觉得这个数据很有价值,很有必要,那么,去“买”吧!

第二、如果不想买又想拥有,去找一些“专业”的机构或人士帮忙吧!

把自己的时间和精力放在最合适的事情上才是最佳的选择。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Excel到PowerBI 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档