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

Python Requests调用Sauce Labs API持续返回404错误求助

排查Python requests调用Sauce Labs API返回404的问题

问题详情

我尝试用Python的requests库调用Sauce Labs API获取任务详情,但无论怎么操作,请求始终返回404错误——哪怕把参数硬编码进去也没用。这个请求在Postman中可以正常执行,Postman导出的使用其他库的Python代码也能正常运行,但目前无法更换使用的库。此前这段代码曾正常工作,现在突然失效,希望有人帮忙排查问题。

代码片段

url = f'https://api.us-west-1.saucelabs.com/rest/v1/{sauce_username}/jobs/{job_id}'
response = requests.get(url, auth=(sauce_username, sauce_access_key))
# print(response.decode('utf-8'))
print(response.status_code)

排查建议

  • 检查变量格式:确认sauce_username和job_id中是否包含特殊字符(如斜杠、空格、百分号等),requests不会自动编码URL路径中的特殊字符,需要用urllib.parse.quote()对变量手动编码后再拼接URL。
  • 核对API区域:Sauce Labs不同区域的API端点不同,确认代码中使用的us-west-1区域是否和Postman中一致,是否存在区域切换导致端点不匹配的情况。
  • 更换认证方式尝试:虽然auth参数是requests推荐的Basic Auth方式,但可以手动构造认证头测试,代码示例:
    import base64
    auth_str = f"{sauce_username}:{sauce_access_key}"
    auth_base64 = base64.b64encode(auth_str.encode('utf-8')).decode('utf-8')
    headers = {'Authorization': f'Basic {auth_base64}'}
    response = requests.get(url, headers=headers)
    
  • 查看完整响应内容:取消注释并修改为print(response.text),查看Sauce Labs返回的具体错误信息,404通常会附带任务不存在、权限不足等明确原因。
  • 确认账号与任务状态:检查当前账号是否仍拥有该任务的访问权限,任务是否被删除、归档,近期账号权限是否有变更。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 22:20:28