You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何使用以下iMacros代码无法下载验证码图片?

解决iMacros无法下载验证码图片的问题

让我来帮你梳理下这个验证码图片保存失败的问题,看了你的代码后,我发现几个关键的问题点,咱们一步步来修正:

问题分析

  1. ONDOWNLOAD命令的使用场景错误:ONDOWNLOAD是用来捕获浏览器主动发起的下载请求(比如点击下载链接触发的下载),但你这里只是定位了验证码图片的标签,并没有触发下载动作,所以这个命令根本不会生效。
  2. SAVE_ELEMENT_SCREENSHOT语法不完整:你用了CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT,但没有指定保存的路径和文件名,iMacros会默认保存到它的默认目录,而不是你设置的C:\tmp\。
  3. 可能的权限或文件夹问题:要确保C:\tmp\文件夹已经创建,并且iMacros有写入这个文件夹的权限,否则即使命令正确,也会保存失败。

修正后的代码方案

我调整了你的代码,重点修正了验证码截图的部分,同时优化了等待逻辑确保图片加载完成:

URL GOTO=https://www.coinpayments.net/index.php?ref=fe31773be1c8558db56c7b9f3063ae08
TAG POS=1 TYPE=A ATTR=TXT:Sign<SP>Up
TAG POS=2 TYPE=DIV ATTR=TXT:Create<SP>New<SP>Account<SP>Please<SP>make<SP>it<SP>at<SP>le*
'SEARCH SOURCE=REGEXP:\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b EXTRACT=$1
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:register ATTR=NAME:username CONTENT=examplethenomtest
TAG POS=1 TYPE=INPUT:EMAIL FORM=ACTION:register ATTR=NAME:email1 CONTENT={{!EXTRACT}}
TAG POS=1 TYPE=INPUT:EMAIL FORM=ACTION:register ATTR=NAME:email2 CONTENT={{!EXTRACT}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:register ATTR=NAME:pass1 CONTENT=k1k1k1k1
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:register ATTR=NAME:pass2 CONTENT=k1k1k1k1
TAG POS=1 TYPE=INPUT:CHECKBOX FORM=ACTION:register ATTR=ID:checkbox CONTENT=YES
TAG POS=2 TYPE=INPUT:CHECKBOX FORM=ACTION:register ATTR=ID:checkbox CONTENT=YES

SET path C:\tmp\
SET file freeditcoin.jpg

' 确保目标文件夹存在,如果不存在可以用DOS命令创建(可选)
' DOS CMD /C IF NOT EXIST {{path}} MKDIR {{path}}

SET !TIMEOUT_PAGE 10
SET !VAR1 EVAL("var randomNumber=Math.floor(Math.random()*10 + 1); randomNumber;")
Wait Seconds={{!Var1}}

' 先删除旧文件(如果存在)
FILEDELETE NAME={{path}}{{file}}

' 等待验证码图片加载完成
WAIT FOR IMAGE POS=1 TYPE=IMG ATTR=ID:captcha TIMEOUT=10

' 使用完整语法保存元素截图到指定路径
TAG POS=1 TYPE=IMG ATTR=ID:captcha CONTENT=EVENT:SAVE_ELEMENT_SCREENSHOT,{{path}}{{file}}

' 等待保存完成
WAIT SECONDS=3

额外注意事项

  • 如果你坚持想用ONDOWNLOAD的方式,需要触发图片的下载动作,比如右键点击图片选择“另存为”,但iMacros模拟右键操作比较麻烦,不如直接截图来得可靠。
  • 有些网站会检测自动化工具,频繁的请求可能会导致验证码加载异常,你的随机等待逻辑是个不错的做法,可以保留。
  • 检查iMacros的设置,确保没有禁用文件保存的权限。

内容的提问来源于stack exchange,提问作者Jesus Garcia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:02:34