All Projects → cloudyr → pyMTurkR

cloudyr / pyMTurkR

Licence: other
A Client for the MTurk Requester API

Programming Languages

r
7636 projects

Projects that are alternatives of or similar to pyMTurkR

invoiceless
Serverless backend for sending simple recurring invoices
Stars: ✭ 44 (+175%)
Mutual labels:  boto3
awsretry
Decorate your AWS Boto3 Calls with AWSRetry.backoff(). This will allows your calls to get around the AWS Eventual Consistency Errors.
Stars: ✭ 42 (+162.5%)
Mutual labels:  boto3
parameterstore-backup
Python script to take a backup of the AWS parameter store
Stars: ✭ 19 (+18.75%)
Mutual labels:  boto3
cognises-flask
Flask Cognises: AWS Cognito group based authorization with user management
Stars: ✭ 16 (+0%)
Mutual labels:  boto3
export-dynamodb
Export Amazon DynamoDb to CSV or JSON
Stars: ✭ 52 (+225%)
Mutual labels:  boto3
Security monkey
Security Monkey monitors AWS, GCP, OpenStack, and GitHub orgs for assets and their changes over time.
Stars: ✭ 4,244 (+26425%)
Mutual labels:  boto3
fuzzywuzzyR
fuzzy string matching in R
Stars: ✭ 32 (+100%)
Mutual labels:  reticulate
RAthena
Connect R to Athena using Boto3 SDK (DBI Interface)
Stars: ✭ 30 (+87.5%)
Mutual labels:  boto3
pytest-serverless
Automatically mocks resources from serverless.yml in pytest using moto.
Stars: ✭ 26 (+62.5%)
Mutual labels:  boto3
PandaCrazy-Max
PandaCrazy Chrome Extension for Amazon Mturk
Stars: ✭ 17 (+6.25%)
Mutual labels:  mturk
botor
Reticulate wrapper on 'boto3' with convenient helper functions -- aka "boto fo(u)r R"
Stars: ✭ 28 (+75%)
Mutual labels:  boto3
aws-security-test
No description or website provided.
Stars: ✭ 14 (-12.5%)
Mutual labels:  boto3
limer
A LimeSurvey R Client
Stars: ✭ 59 (+268.75%)
Mutual labels:  cloudyr
simple-flask-s3-uploader
Simple and easy to use Flask app to upload files to Amazon S3. Based on Python, Flask, and using Boto3. Securely storing your AWS credentials as environment variables. Quick AWS S3 Flask uploader example.
Stars: ✭ 24 (+50%)
Mutual labels:  boto3
aws.polly
Client for AWS Polly
Stars: ✭ 24 (+50%)
Mutual labels:  cloudyr
s3-credentials
A tool for creating credentials for accessing S3 buckets
Stars: ✭ 138 (+762.5%)
Mutual labels:  boto3
weback-unofficial
Unofficial WeBack API client
Stars: ✭ 21 (+31.25%)
Mutual labels:  boto3
s3upload
Upload multiple files to AWS S3, make them public, and get their URLs easily from the command line.
Stars: ✭ 24 (+50%)
Mutual labels:  boto3
boto3-examples
Example scripts for boto3.
Stars: ✭ 55 (+243.75%)
Mutual labels:  boto3
awspack
Amazon Web Services Bundle Package
Stars: ✭ 14 (-12.5%)
Mutual labels:  cloudyr

pyMTurkR: A Client for the MTurk Requester API

travis-ci codecov test coverage CRAN version dev version lifecycle CRAN downloads

pyMTurkR is an R package that allows you to interface with MTurk's Requester API.

pyMTurkR provides access to the latest Amazon Mechanical Turk (MTurk) Requester API (version '2017-01-17'), using reticulate to wrap the boto3 SDK for Python. pyMTurkR is a replacement for the now obsolete MTurkR.

Using this package, you can perform operations like: creating HITs, updating HITs, creating custom Qualifications, reviewing submitted Assignments, approving/rejecting Assignments, sending bonus payments to Workers, sending messages to Workers, blocking/unblocking Workers, and many more. See the pyMTurkR documentation for a full list of operations available.

Why make this?

pyMTurkR was created because on June 1, 2019 Amazon deprecated the MTurk API (version '2014-08-15') that MTurkR was using, rendering it obsolete. This package was created to maintain MTurk access for R users while migrating to the new MTurk API (version '2017-01-17').

pyMTurkR is not a native R language package. It uses reticulate to import and wrap the boto3 module for Python. Cross-language dependency is not necessarily a bad thing, and from the user perspective there is probably no difference, besides a few extra installation steps. Welcome to the wonderful world of R-python interoperability.

Installation

1. Install python and pip

1.1. Install python 2 (>= 2.7) or python 3 (>= 3.3) (download page)

1.2. Install pip for python

1.3. Install reticulate for R

install.packages("reticulate")

1.4. Check that reticulate can now find python. You may have to restart RStudio.

reticulate::py_config()

You will see information about your python configuration, including one or more system paths where python is installed.

1.5. Check that pip can be found

system("pip --version")

You will see something like pip 18.0 from /usr/local/lib/python2.7/site-packages/pip

2. Install boto3

2.1. Find the default python path that reticulate is using

reticulate::py_config()

Take note of the path in the first line (e.g., "/usr/bin/python").

2.2. Find the path that the system pip command is using

system("pip --version")

For example, in "pip 18.0 from /usr/local/lib/python2.7/site-packages/pip" the python path is "/usr/local/lib/python2.7". If the path here does not match the py_config() path, then you may need to manually set the path using use_python().

reticulate::use_python("/usr/local/lib/python2.7", required = TRUE)

You may have to restart RStudio before setting the path if you have run other reticulate operations.

2.3. Install boto3 using pip

system("pip install boto3")

Or alternatively, run this command in the system terminal (sudo pip install boto3 for Mac users).

2.4. Check if you can now import boto3. You may have to restart RStudio.

reticulate::import("boto3")

For additional install options, see "Installing Python Packages" in the reticulate docs.

3. Install pyMTurkR

3.1. Finally, you can install pyMTurkR.

install.packages("pyMTurkR")

Or the development version

devtools::install_github("cloudyr/pyMTurkR")

Usage

Before using the package, you will need to retrieve your "Access" and "Secret Access" keys from Amazon Web Services (AWS). See "Understanding and Getting Your Security Credentials".

Set AWS keys

The Access and Secret Access keys should be set as environment variables in R prior to running any API operations.

Sys.setenv(AWS_ACCESS_KEY_ID = "MY_ACCESS_KEY")
Sys.setenv(AWS_SECRET_ACCESS_KEY = "MY_SECRET_ACCESS_KEY")

Set environment (Sandbox or Live)

pyMTurkR will run in "sandbox" mode by default. It is good practice to test any new methods, procedures, or code in the sandbox first before going live. To change this setting and use the live environment, set pyMTurkR.sandbox to FALSE.

options(pyMTurkR.sandbox = FALSE)

Examples

library("pyMTurkR")
Sys.setenv(AWS_ACCESS_KEY_ID = "ABCD1234")
Sys.setenv(AWS_SECRET_ACCESS_KEY = "EFGH5678")
options(pyMTurkR.sandbox = FALSE)
AccountBalance()

Changelog

For development updates see the changelog.

Package maintainer / author

pyMTurkR is written and maintained by Tyler Burleigh.

follow on Twitter

Additional credits

pyMTurkR borrows code from MTurkR, written by Thomas J. Leeper. pyMTurkR's logo borrows elements from Amazon, R, and python logos; the "three people" element is thanks to Muammark / Freepik.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].