影刀的「处理上传对话框」在 macOS 26 下会报 Code: 101 未找到元素。禁用该指令,点击网页的上传按钮后执行 Python,通过 AppleScript 使用 Command + Shift + G 输入文件路径,可以绕过该问题。
脚本示例:
文件路径使用变量 record["成片路径"],这里换成你自己的
```python
import os
import subprocess
file_path = str(record["成片路径"]).strip()
file_path = os.path.expanduser(file_path)
if not file_path:
raise ValueError('record["成片路径"] 为空')
if not os.path.isfile(file_path):
raise FileNotFoundError(f"上传文件不存在:{file_path}")
apple_script = r'''
on run argv
set filePath to item 1 of argv
set the clipboard to filePath
tell application "Google Chrome"
activate
end tell
delay 1
tell application "System Events"
keystroke "g" using {command down, shift down}
delay 0.6
keystroke "v" using {command down}
delay 0.5
key code 36
delay 1
key code 36
end tell
end run
'''
subprocess.run(["osascript", "-e", apple_script, file_path], check=True)
```
影刀流程:点击上传按钮 → 执行上述 Python 代码 → 等待文件上传完成。原有的「处理上传对话框」应保持禁用或删除。