求助:在iMacros中调用DeathByCaptcha API解验证码失败返回-1
解决iMacros调用DeathByCaptcha API返回-1的问题
我之前也踩过DBC API调用的坑,返回-1大多是请求参数、提交方式或者账号的问题,咱们一步步来排查和解决:
1. 确认请求方式和参数完整性
你用URL GOTO发起的是GET请求,但DBC的imagegroup接口需要POST请求才能上传验证码图片(GET没法处理文件上传),而且你可能漏了关键参数:
- 必须完整填写
username和password(注意代码里的截断部分要补全,比如ATTR=NAME:username而不是usern...) - 一定要包含
file参数来指定本地验证码图片的路径,iMacros处理文件上传需要用INPUT:FILE类型的TAG
2. 修正后的iMacros代码示例
把你的代码补全并调整成正确的POST提交方式,参考下面的片段:
VERSION BUILD=844 URL GOTO=http://api.dbcapi.me/decaptcher?function=imagegroup&print_format=html ' 填写DBC用户名 TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=NAME:username CONTENT=你的DBC账号名 ' 填写DBC密码 TAG POS=1 TYPE=INPUT:PASSWORD FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=NAME:password CONTENT=你的DBC密码 ' 上传本地验证码图片(替换成你实际的图片路径) TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=NAME:file CONTENT=C:\你的验证码存放路径\captcha.png ' 提交表单 TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=VALUE:Send ' 提取返回的验证码结果 TAG POS=1 TYPE=BODY ATTR=* EXTRACT=TXT
3. 额外排查点
- 账号验证:先手动在浏览器打开API页面,输入账号密码上传图片测试,确认账号没有余额不足、封禁等问题,排除账号本身的错误
- 接口选择:如果是单张验证码,试试用
function=picture接口(参数和流程一致),imagegroup是针对多图验证码的,可能不适用单张场景 - 日志排查:开启iMacros的日志功能(Options → Logging),查看请求的详细报错信息,比如是否存在文件路径错误、参数缺失等问题
内容的提问来源于stack exchange,提问作者Vaja Axobadze
相关产品推荐
相关产品推荐

