油猴脚本(4)——多维表格导出图片

wils
wils

创作者俱乐部成员

前几天论坛里有朋友问,多维表格里的图片怎么批量导出?

没找到这个功能,可能是我不太会用。。。

于是尝试了通过airscript,可以获取图片的url,但在airscript里怎么下载没搞明白

最后还是写了油猴脚本

👋

// ==UserScript==

// @name pic_download

// @namespace http://tampermonkey.net/

// @version 2024-07-23

// @description try to take over the world!

// @author You

// @match https://www.kdocs.cn/l/*

// @icon https://www.google.com/s2/favicons?sz=64&domain=kdocs.cn

// @grant GM_download

// ==/UserScript==

(function() {

'use strict';

let btn = document.createElement('button')

btn.textContent = '导出图片'

btn.style.position = 'absolute'

btn.style.left = '300px'

btn.style.zIndex = 999

btn.addEventListener('click', function() {

WPSOpenApi.Application.Record.GetRecords(1).then(r=>{

for (let i of r.records) {

for (let j of i.fields['pic']) {

let f = Date.now() + j['fileName']

WPSOpenApi.Application.Record.GetAttachmentURL(1, j['uploadId'] + '|' + j['source']).then(x=>{

GM_download(x, f)

})

}

}

})

})

document.body.prepend(btn)

})();

写的很粗,但大概意思是:

  • 在注释里开启下载权限GM_download

  • 创建一个按钮

  • 点击按钮时,获取表1里的每一行记录

  • 对于每一行的pic字段,获取里面每一张图片的source和uploadId

  • 用source和uploadId获取每一张图片的url

  • 通过GM_download下载url

这里的表序号1、字段名pic、下载的文件名都是图省事写成固定的了,需要根据自己的表修改一下。。。


遇到了个问题:

  • 官方文档里GetAttachmentURL方法没写需要sheetId,但使用时发现需要这个

广东省
浏览 9202
2
6
分享
6 +1
2 +1
全部评论