【脚本】阿里云盘批量分享脚本

起因看到阿里云盘交流群里有人想把文件夹里的word一个个分享出来,本来推荐油猴秒传脚本,但是那个好像封了,就写了一个比较简陋的脚本,献丑献丑。
视频链接:https://www.bilibili.com/video/BV1di4y1y7L5/
2024.02.11更新,代码逻辑没变,阿里云盘页面class改了,推荐浏览器插件Automa,自动化操作JS
// 待整个程序执行完毕即可点击button把所有链接写入到剪贴板
var btn = document.createElement("button"); //创建需要增加的元素节点
var node = document.createTextNode("执行完毕后点击此处复制链接"); //创建文本节点
btn.appendChild(node); //将文本节点增加至创建的元素中
btn.setAttribute("onClick", "copyLink()");
var element = document.getElementsByClassName("actions--2qvID")[0]; //获取父节点
element.appendChild(btn); //添加至父节点内

// textarea存储每次循环复制的文件名链接
var textarea_text = document.createElement("textarea");
document.body.appendChild(textarea_text);

alert("请等待5秒钟...");
var i = -1;
setTimeout(function () {
  // 选择第一个文件
  let step1 = setTimeout(() => {
    document.getElementsByClassName("input--1mW1D")[i + 1].click();
    clearTimeout(step1);
  }, 500);
  // 点击分享
  let step2 = setTimeout(() => {
    document.getElementsByClassName("toolbar-item--21b0l")[1].click();
    clearTimeout(step2);
  }, 1000);
  // 创建分享
  let step3 = setTimeout(() => {
  	// 默认有效期永久(如果想设置为30天有效期请把下列两行代码删掉)
    document.querySelector(".share-expire-wrapper--w1Wb6").click();
    document.getElementsByClassName("title--2ojpH")[1].click();
    // 分享
    document.getElementsByClassName("button--2Aa4u")[0].click();
    clearTimeout(step3);
  }, 1500);
  // 复制文件名
  let step4 = setTimeout(() => {
    // 文件名
    var p_text = document.getElementsByClassName("title--3x5k2")[i];

    // 链接
    var div_text = document.getElementsByClassName("url--1vyKp")[0];
    // 文本
    var ali_text =
      "点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放。";

    sum =
      p_text.innerText +
      "\n" +
      div_text.innerText +
      "\n" +
      ali_text +
      "\n" +
      "\n";
    textarea_text.innerHTML += sum;

    console.log(p_text.innerText);
    console.log(div_text.innerText);
    console.log(ali_text);
    console.log(textarea_text.innerHTML);
    clearTimeout(step4);
  }, 2000);
  let step5 = setTimeout(() => {
    // 关闭
    document.getElementsByClassName("icon-wrapper--3dbbo")[0].click();
    clearTimeout(step5);
  }, 2500);
  let step6 = setTimeout(() => {
    // 取消选择
    document.getElementsByClassName("input--1mW1D")[i + 1].click();
    clearTimeout(step6);
  }, 3000);

  i++;
  if (i < document.getElementsByClassName("node-card--2g50y").length) {
    setTimeout(arguments.callee, 4000);
  }
}, 4000);
function copyLink() {
  textarea_text.select(); // 选择对象
  document.execCommand("Copy"); // 执行浏览器复制命令
}


如果文件比较多建议把浏览器缩放小一点:
在这里插入图片描述
因为阿里云盘每次只加载大概30个文件夹,也想过定时器控制滚动条自动往下滑,不过想到不同的电脑分辨率尺寸都不一样还要适配黔驴技穷实在是本人太菜只能除此下策。

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值