用于python的Amazon产品API—一个奇怪的错误,我可以';不明白

用于python的Amazon产品API—一个奇怪的错误,我可以';不明白,python,api,amazon,product,Python,Api,Amazon,Product,在这种情况下,我正试图让这个API为我工作,但我似乎无法理解它的所有怪癖。即使我运行下面的示例(取自),也会出现随机错误。现在我得到一个错误,它说\uuuu init\uuuu()接受4个参数,我只给它两个参数。但是,我将所有凭据都放在了正确的位置,在模块中找不到\uuu init\uuu()需要额外参数的地方。有人有什么想法吗 这是我正在运行的。有关该计划的更多详细信息可以在上面的链接中找到 from amazonproduct.api import API import lxml if _

在这种情况下,我正试图让这个API为我工作,但我似乎无法理解它的所有怪癖。即使我运行下面的示例(取自),也会出现随机错误。现在我得到一个错误,它说
\uuuu init\uuuu()
接受4个参数,我只给它两个参数。但是,我将所有凭据都放在了正确的位置,在模块中找不到
\uuu init\uuu()
需要额外参数的地方。有人有什么想法吗

这是我正在运行的。有关该计划的更多详细信息可以在上面的链接中找到

from amazonproduct.api import API
import lxml

if __name__ == '__main__':

    # Don't forget to create file ~/.amazon-product-api
    # with your credentials (see docs for details)
    api = API(locale = 'uk')

    result = api.item_search('Books', Publisher= 'RosettaBooks',
        ResponseGroup='Large')

    # extract paging information
    total_results = result.results
    total_pages = len(result)  # or result.pages

    for book in result:

        print 'page %d of %d' % (result.current, total_pages)

        #~ from lxml import etree
        #~ print etree.tostring(book, pretty_print=True)

        print book.ASIN,
        print unicode(book.ItemAttributes.Author), ':',
        print unicode(book.ItemAttributes.Title),
        if hasattr(book.ItemAttributes, 'ListPrice'):
            print unicode(book.ItemAttributes.ListPrice.FormattedPrice)
        elif hasattr(book.OfferSummary, 'LowestUsedPrice'):
            print u'(used from %s)' % book.OfferSummary.LowestUsedPrice.FormattedPrice

我也遇到了同样的问题,我在python amazon产品api的bitbucket站点上发现了几年前的一个问题,使我能够解决这个问题。看

我所做的工作不是使用.amazon产品api文件来指定凭据,而是将它们作为api调用的一部分传递:

AWS_KEY = '……….'
SECRET_KEY = '……………'
ASSOCIATE_TAG = '…………….'
api = API(access_key_id=AWS_KEY, secret_access_key=SECRET_KEY, locale="us", associate_tag=ASSOCIATE_TAG)

您应该显示实际错误和回溯。所有这些信息对于调试都至关重要。(例如,哪个
\uuuuu init\uuuuuu
)很好!这里是:回溯(最近一次调用last):文件“unrankedcall.py”,第8行,在api=api(locale='uk')TypeError:\uuuu init\uuuu()至少接受4个参数(给定2个)