Использование Python 3.6 и библиотеки MWS для извлечения отчета из API Amazon MWS.
Я пытаюсь просмотреть отчеты в объекте list_of_reports и найти отчет, который соответствует тому, который я запросил, "done ".
Библиотека находится здесь: https://github.com/czpython/python-amazon-mws/blob/master/mws/mws.py
Соответствующие строки:
def get_report_request_list(self, requestids=(), types=(), processingstatuses=(),
max_count=None, fromdate=None, todate=None):
data = dict(Action='GetReportRequestList',
MaxCount=max_count,
RequestedFromDate=fromdate,
RequestedToDate=todate)
data.update(self.enumerate_param('ReportRequestIdList.Id.', requestids))
data.update(self.enumerate_param('ReportTypeList.Type.', types))
data.update(self.enumerate_param('ReportProcessingStatusList.Status.', processingstatuses))
return self.make_request(data)
Блок-схема Amazon Doc: http://docs.developer.amazonservices.com/en_US/reports/Reports_Overview.html
#!/usr/bin/env python3.6
# -*- coding: utf-8 -*-
import csv
import io
import mws
access_key = 'XXX'
merchant_id = 'XXX'
secret_key = 'XXX'
marketplace_id = '00'
report_id = '_GET_AMAZON_FULFILLED_SHIPMENTS_DATA_'
def get_report(access_key, secret_key, merchant_id, marketplace_id, report_type):
x = mws.Reports(access_key=access_key, secret_key=secret_key, account_id=merchant_id)
x.request_report(report_type)
reports = x.get_report_request_list()
for report in reports.GetReportRequestListResponse.GetReportRequestListResult.ReportRequestInfo:
if report.ReportProcessingStatus == '_DONE_' and report.ReportType == report_type:
pass
get_report(access_key=access_key, secret_key=secret_key, merchant_id=merchant_id, marketplace_id=marketplace_id, report_type=report_id)
Я получаю сообщение об ошибке «У объекта« DictWrapper »нет атрибута GetReportRequestListResponse» при попытке перебрать ответ get_report_request_list ().
Знаете ли вы, почему и как я могу это исправить?