Zapier+OpenAI转录通话录音遇Cloudflare安全校验问题求方案
解决Zapier中OpenAI转录Cloudflare保护的通话录音URL问题
针对你遇到的Cloudflare JS校验导致OpenAI无法直接访问录音URL的问题,以下是几个可行的Workaround:
方案1:用Browser by Zapier绕过校验并获取可访问的音频资源
- 添加Browser by Zapier步骤,选择「Get Page」动作:
- 输入目标录音URL,设置
User-Agent为主流浏览器标识(比如Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36) - 开启「Render JavaScript」选项,让工具模拟浏览器执行Cloudflare的校验逻辑
- 输入目标录音URL,设置
- 从步骤输出中提取音频的实际内容(
content字段),或提取重定向后的真实音频URL(可通过检查页面响应的跳转记录获取) - 将提取到的资源传递给OpenAI的转录步骤完成处理
方案2:下载录音到Zapier临时存储中转
- 在Webhook步骤后添加Code by Zapier(Python)步骤,编写代码通过Browser步骤拿到的真实URL下载音频:
import requests url = input_data['real_audio_url'] response = requests.get(url) # 将音频内容存入Zapier Storage storage.put('recording.mp3', response.content, 'audio/mpeg') # 返回存储后的URL return {'storage_url': storage.url('recording.mp3')} - 用存储生成的公开URL作为OpenAI转录的输入,该URL无Cloudflare校验限制
方案3:自定义请求处理Cloudflare校验(进阶)
- 使用Code by Zapier步骤,借助
cloudscraper库(优先确认Zapier环境支持,若未预装则优先方案1)模拟浏览器行为:import cloudscraper scraper = cloudscraper.create_scraper() url = input_data['recording_url'] audio_content = scraper.get(url).content # 直接将音频内容传递给OpenAI,或存入存储 return {'audio_content': audio_content} - 将音频内容直接传入OpenAI的转录API,跳过URL访问环节
注意事项
- 优先使用Browser by Zapier,它内置的JS渲染能处理绝大多数Cloudflare基础校验,无需编写代码
- 测试时务必检查每个步骤的输出,确认拿到的是有效的音频资源,再传递给OpenAI
内容的提问来源于stack exchange,提问作者Nkp
相关产品推荐
相关产品推荐

