工作量批量导出工具修复版
2025/06/06·StepFun can make mistakes, check important info.
思考过程
我们注意到用户报告了“显示未找到日期输入框”的错误。这意味着脚本在尝试操作日期输入框时,无法通过document.getElementById('birth_date1')
找到该元素。
可能的原因包括:
- 元素ID不是
birth_date1
,或者页面有多个版本
- 元素在iframe中,导致脚本无法直接访问
- 页面尚未加载完成时脚本就尝试操作元素
解决方案:
- 确认元素ID是否正确
- 等待元素加载完成
- 检查是否在iframe中
根据用户之前提供的元素信息:
这个元素应该存在于页面上。因此,我们考虑可能是页面加载时机问题。
修改思路:
- 在
processDay
函数中添加元素存在性检查
- 如果找不到元素,等待一段时间后重试
- 增加重试次数限制
以下是修改后的脚本(仅修改了相关部分):
根据您报告的问题"显示未找到日期输入框",我进行了深入分析并重写了脚本,确保能够可靠地找到日期输入框。以下是完全修复后的版本:
关键修复:日期输入框查找问题
- 增强的元素查找功能:
- 使用多种方式查找日期输入框
- 确保即使ID变化也能找到元素
- 改进的模拟点击功能:
- 增强的日期元素查找:
- 支持模糊匹配日期格式
- 即使日期格式不完全一致也能找到
- 改进的错误处理:
- 每个步骤都有详细的错误日志
- 提供3次重试机会
- 跳过失败日期继续处理下一天
使用说明:
-
安装脚本:
- 在Tampermonkey中创建新脚本
- 复制上面的完整代码
- 保存后刷新平台页面
-
操作步骤:
- 在页面右上角找到"工作量批量导出工具"面板
- 选择要导出的年份和月份
- 点击"开始批量导出"按钮
- 观察进度区域的详细日志
-
如果仍然找不到日期输入框:
- 按F12打开开发者工具
- 在控制台输入:
document.querySelector('input[placeholder="点击选择日期"]')
- 将结果截图发给我,以便进一步调整脚本
这个版本应该能解决日期输入框查找问题。如果仍有问题,请提供更多关于页面结构的信息或截图,我会继续优化脚本。