还在手动复制粘贴?一个案例教你用WPS JSA一键采集数据

E精精
E精精 WPS资深用户Lv.3 优质创作者KVPWPS函数专家

Lv.3 优质创作者

今天主要分享一个WPS-JSA中的网络请求,现在已经支持fetch和传统的XMLHttpRequest,今天我们就通过一个获取汇率的案例来一起交流一下!

▍动画演示

先来看看效果,下面是动画演示,点击按钮就可以拉取事实的汇率!下面我们进行一些讲解!

▼ 动画演示-一键下载更新▼

▍代码及说明

先来看看XMLHttpRequest的核心部分,new XMLHttpRequest

直接实例化即可使用,使用open方法来设置请求,setRequestHeader

来设置请求头,基本同JS中一样!最后send方法发送请求即可!

更详细的可以看看MDN中的介绍,更加详细和权威!

https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest

由于WPS已经支持ES6,所以代码方面,我也做了一些优化,使用了一些ES6+的特性,一起学习!

【第一部分】

主要构建http请求,前面已经说过了,状态码如果不是200,直接throw一个错误!

是一个免费测试使用的汇率API!

【第二部分】

http请求成功,使用responseText属性获取请求字符串结果,大部分api设计返回的都是JSON,这里我们使用JSON.parse来转换解析!

Object.entries可以把对象转成嵌套键值对数组,用于遍历返回!三个点是新的扩展运算符,相当于去掉了外层的[]和表头组成一个嵌套的二维数组!

【第三部分】

这部分,主要是把前面整理的数组数据写入工作表中,这里就用到了JSA的基础知识了,主要还是Excel的对象模型,主要JSA中方法是一定要括号的,比如ClearContents在Excel中不加括号也能执行,在JSA中直接报错

写入结果强调多次了,可以使用Value2或者Value(),在JSA中Value是方法,括号不可少!

其他一些font字体设置及表格颜色设置基本同VBA,支持十六进制

OK,以上就是今天的内容,更多办公自动化教程,欢迎关注小编!

江苏省
浏览 358
收藏
6
分享
6 +1
2
+1
全部评论 2
 
扶摇直上九天⁹⁹
学到了学到了
   广西
举报
1
0
 
fbfbzz
学习了
举报
1
0