2016-04-20 1 views
1

J'ai un HIT entièrement configuré sur MTurk et j'ai besoin de publier des lots pour ce HIT à intervalles fixes pour une période de temps plus longue. Bien sûr, le faire manuellement est fatigant et sujet aux erreurs, car les lots doivent être affichés à des moments précis de la journée. Y a-t-il des scripts que je pourrais utiliser pour y parvenir? J'ai regardé les outils de ligne de commande d'Amazon, mais ils semblent difficiles à utiliser et Amazon ne les prend plus en charge non plus.Publication automatique d'un nouveau lot pour un HIT sortant dans MTurk

Si la solution implique une programmation, c'est bien. Je sais aussi comment utiliser cronjobs.

+0

Comment publiez-vous ces HIT? Vous pouvez automatiser le processus en utilisant quelque chose comme le sélénium ou une combinaison de cURL et php, ou de la belle soupe + python. Je veux dire, vous pourriez mélanger et assortir beaucoup d'outils. La meilleure solution est vraiment basée sur ce que vous devez faire afin de publier vos HITs. J'irais probablement sur la voie du sélénium puisque vous pouvez certainement faire le travail de cette façon, mais sans plus d'informations sur la façon dont vous publiez les HIT, je ne peux pas dire avec certitude. – DuckPuncher

+0

Merci pour votre réponse. J'ai mis en place des HIT en utilisant l'interface web d'Amazon. Je ne connaissais pas le sélénium et oui, on dirait que ça pourrait être une solution. Cependant, je préférerais une solution qui utilise l'API HTTP d'Amazon parce que c'est probablement plus robuste. – tmalsburg

+0

Vous devriez inclure tout cela dans votre question pour obtenir des réponses plus pertinentes. Si Amazon a une API pour publier les lots, où se trouve la documentation? Pourriez-vous fournir le lien afin que nous sachions de quoi vous travaillez? Quelles méthodes utilisez-vous de leur API pour tenter cela? – DuckPuncher

Répondre

4

Vous devriez vraiment faire vos devoirs avant de poster ici. Mais puisque vous êtes mon ancien moi, je serai généreux et je vous aiderai. Un peu de googling montre qu'il y a une très belle bibliothèque Python pour interagir avec MTurk. C'est ce qu'on appelle Boto. Le documentation est un peu laconique, mais il y a un bon tutoriel qui vous aide à faire vos premiers pas: http://www.toforge.com/2011/04/boto-mturk-tutorial-create-hits/

Voici un exemple montrant comment il est d'utiliser cette bibliothèque facile:

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() 

Une fois que vous avez script qui crée un nouveau HIT, vous pouvez utiliser la commande crontab (disponible sur Linux/Unix et peut-être OS X) pour démarrer automatiquement ce script à des intervalles spécifiques.

+1

Bahahaha, le plus grand. répondre. déjà. – DuckPuncher

+1

Utilisez simplement la fonction microbatch de TurkPrime. Cela automatisera tout le processus. – Jonathan