" str对象不可调用"

时间:2015-11-22 18:22:18

标签: python amazon-web-services amazon amazon-product-api

我试图让它成为api将查找用户输入的商品代码。每次运行此代码时,它都允许用户输入项目代码,而不是将该代码处理到api中,它说: " str对象不可调用"参考第14行result=api.item_lookup('')

当您移除api.item_lookup=raw_input()并手动将商品代码放入api.item_lookup时,以下代码有效,例如:result=api.item_lookup('B017WMMAVU')

from flask import Flask
from flask import render_template
from flask_bootstrap import Bootstrap

app = Flask("charity_third_page")

from amazonproduct import API
from lxml import etree
from lxml import objectify
api=API(locale='uk')

api.item_lookup = raw_input()

result=api.item_lookup('')

for item in result.Items.Item:
    print '%s' % (item.ItemAttributes.Title)

item=api.item_lookup('', ResponseGroup='OfferSummary')


print str(item.Items.Item.OfferSummary.LowestNewPrice.getchildren()[0]/ 100.0)

非常感谢任何有关如何使其运行的帮助。

2 个答案:

答案 0 :(得分:2)

由于:

api.item_lookup = raw_input()

将字符串(raw_input的结果)分配给api.item_lookup。然后你试图把它称为一种方法。也许:

myStr = raw_input()
result = api.item_lookup(myStr)

代替。

答案 1 :(得分:1)

您已将raw_input(字符串)的结果分配给api.item_lookup。字符串不可调用,但在下一行,您尝试调用方法api.item_lookup。也许你的意思是将输入传递给函数,而不是覆盖它。

result = api.item_lookup(raw_input())