在 MTurk 中为现有 HIT 自动发布新批次

Automatically publish a new batch for an exiting HIT in MTurk

我在 MTurk 上有一个完全配置的 HIT,需要在较长时间内以固定间隔发布此 HIT 的批次。当然,手动执行此操作既累人又容易出错,因为需要在一天中的特定时间过帐批次。有没有我可以用来实现此目的的脚本?

我看过亚马逊的命令行工具,但它们使用起来似乎很麻烦,而且亚马逊也不再支持它们了。

如果解决方案涉及一些编程,那很好。我也知道如何使用 cronjobs。

你真的应该在发帖之前做足功课。但既然你是我以前的自己,那我就大方的帮你一把。一些谷歌搜索显示有一个非常好的 Python 库用于与 MTurk 交互。它被称为Boto. The documentation is a little terse but there is a good tutorial that helps you make your first steps: http://www.toforge.com/2011/04/boto-mturk-tutorial-create-hits/

这里有一个例子展示了使用这个库是多么容易:

from boto.mturk.connection import MTurkConnection

ACCESS_ID ='your access key'
SECRET_KEY = 'your secret key'
HOST = 'mechanicalturk.sandbox.amazonaws.com'

mtc = MTurkConnection(aws_access_key_id=ACCESS_ID,
                      aws_secret_access_key=SECRET_KEY,
                      host=HOST)

print mtc.get_account_balance()

一旦你有了一个创建新 HIT 的脚本,你就可以使用 crontab 命令(在 Linux/Unix 和也许 OS X 上可用)以特定的时间间隔自动启动这个脚本。