0

我正在使用该boto库来玩弄 Amazon MTurk。我想检索一些可审查的 HIT,并显示它们的属性。例如:

hits = self.mturk_conn.get_reviewable_hits(page_size=30, status='Reviewable', sort_by='Expiration', sort_direction='Ascending', page_number=1)

for h in hits:
    print '%s: %s' % (h.HITId, h.Title)

我确实设法得到,但由于某种原因,我得到这个错误消息HITId时无法得到:Title

AttributeError: HIT instance has no attribute 'Title'

查看 AWS API ( http://docs.aws.amazon.com/AWSMechTurk/latest/AWSMturkAPI/ApiReference_HITDataStructureArticle.html ) 表明该属性应该存在。实际上,如果我通过get_hit的方法获得单个 HIT boto,则Title属性存在。为什么这对方法返回的 HIT 不起作用get_reviewable_hits

4

1 回答 1

2

查看您正在调用的实际操作的示例响应。

而单个GetHIT 调用返回完整的 HIT 数据结构。

正如您在 HIT 数据结构的文章中所见,并非所有属性都是必需的。

这取决于您进行的 API 调用,HIT 响应对象具有哪些属性。(令人困惑,对吧!?)

在这种情况下,您实际上必须调用GetReviewableHITs,然后使用返回的 HITIdGetHIT来获取包含该Title属性的完整结构。

顺便说一句,您可以使用我的 Python mTurk API而不是使用 Boto ,它使用 API 文档中的确切名称 :)

于 2013-04-05T16:07:18.623 回答