当前位置: 首页 > 知识库问答 >
问题:

urllib。错误HTTPError:HTTP错误400:错误请求

陈康胜
2023-03-14

我正在尝试搜索亚马逊的产品广告,并使用botlenose来帮助我做到这一点。但是,我刚刚收到HTTP错误400。

其他一些重要信息:

我来自巴西,我的标签也来自亚马逊。这是个问题吗?

我确实检查了我的钥匙、秘密和标签,一切正常。我确实在StackOverflow上查看了其他一些问题,但对我来说没有任何效果。

import bottlenose
AWS_ACCESS_KEY_ID="XXXXXXXXXXXXXXX"
AWS_SECRET_ACCESS_KEY="xxxxxxxxxxxxxxxxxxxxxxx"
AWS_ASSOCIATE_TAG="yyyyyyyyyyy"
amazon = bottlenose.Amazon(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_ASSOCIATE_TAG,  Region='BR')
response = amazon.ItemLookup(ItemId="B007OZNUCE")

当然,出于安全原因,我更改了密钥。

Traceback(最近一次调用最后一次):File"",第6行,在File"/User/am/Documents/PycharmProjects/08/lib/python3.7/site-Packes/api.py",第274行,在调用{'api_url':api_url,'cache_url':cache_url})File"/User/am/Documents/PycharmProjects/08lib/python3.7/site-Packes/api.py",第235行,_call_api返回urllib2.urlopen(api_request, timeout=Self。超时)文件/库/框架/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py,第222行,在urloen返回opener.open(url, data, timeout)文件/库/框架/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py,第531行,在打开响应=meth(req,响应)文件/库/框架/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py,第641行,在http_response'超文本传输协议',请求,响应,代码,msg, hdrs)文件/库/框架/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py,第569行,在错误返回自己。_call_chain(*args)文件/库/框架/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py,第503行,在_call_chain结果=func(*args)文件/库/框架/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py,第649行,在http_error_default引发HTTPError(req.full_url, code, msg, hdrs, fp)urllib.error.HTTPError: HTTP错误400:错误请求

共有1个答案

养昊天
2023-03-14

之后,我尝试通过以下方式生成签名url:http://associates-amazon.s3.amazonaws.com/signed-requests/helper/index.html

并尝试将两个网址(通过宽吻和亚马逊链接),并且都返回相同的错误

<ItemLookupErrorResponse xmlns="http://ecs.amazonaws.com/doc/2013-08-01/">
<Error>
<Code>AWS.InvalidAccount</Code>
<Message>
Your AccessKey Id is not registered for Product Advertising API. Please use the AccessKey Id obtained after registering at https://affiliate-program.amazon.com/assoc_credentials/home.
</Message>
</Error>
<RequestID>4d761947-8b00-44d4-a9c0-0a9079e8d603</RequestID>
</ItemLookupErrorResponse>

现在,我正在联系亚马逊的技术支持来解决这个问题。

谢谢大家!

 类似资料:
  • Traceback(最近的最后一次调用):文件"C:/用户/AppData/本地/程序/Python/Python37/client.py",第54行,引号=json.loads(urllib.request.urlopen(QUERY.格式(random.random())). read())文件"C:\用户\AppData\本地\程序\Python\Python37\lib\urllib\re

  • 我有一个基于Spring Web model view controller(MVC)框架的项目。Spring Web模型-视图-控制器(MVC)框架的版本是3.2.8 我有这个控制器 这个URL一切正常:

  • 目前从Angular JS controller中,我试图将JSON数据发送到后端服务。但是我有400个错误的请求错误。 在Controller中,我试图通过http服务发送数据,如下所示:

  • 问题内容: 我有一段这样的代码 当我输入的查询超过一个词,例如“狗”时,出现以下错误。 谁能指出我做错了什么?提前致谢。 问题答案: “狗”返回400错误的原因是因为您没有转义URL的字符串。 如果您这样做: 会的。 但是,我强烈建议您使用请求,而不要使用urllib / urllib2 / httplib。这要容易得多,它将为您处理所有这一切。 这是与python请求相同的代码:

  • 我正在尝试使用Postman访问API,以使用基本身份验证获取响应,但当我提交数据时,它会给我带来可怕的400错误,这显然表明某些标头设置不正确。 以下是API信息: 作为回应,我应该得到一个JSON形式的加密令牌,而不是得到这个错误。 以下是邮差截图: 我错过了什么吗?

  • 我正在使用实现一个联系人应用程序。现在,我正试图通过发送以下格式的put请求来更新联系人 我将XML作为字符串发送,作为请求的主体。这是我的xmlString(请求主体) 我写了下面的代码来发送更新联系人的PUT请求。 当我试图在中发送请求时,联系人更新成功。但是当我试图运行上面的程序时,我得到了 400错误请求错误 我不知道我哪里出错了。任何帮助都将不胜感激!