Keboola Input Mapping

  • drobnikj/keboola-input-mapping
  • Modified
  • Users 4
  • Runs 683
  • Created by Author's avatarJakub Drobník

It parses the input table from Apify <> Keboola extractor and maps the data into another task or actor input.

To run the code examples, you need to have an Apify account. Replace <YOUR_API_TOKEN> in the code with your API token. For a more detailed explanation, please read about running Actors via the API in Apify Docs.

from apify_client import ApifyClient

# Initialize the ApifyClient with your API token
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "inputMapping": """async function inputMappingFunction({ currentInput, parsedInputTableCsv }) {
    console.log(parsedInputTableCsv);
    const targetInput = {
        startUrls: parsedInputTableCsv.map((line) => line['URL']),
    }
    return targetInput;
}""" }

# Run the Actor and wait for it to finish
run = client.actor("drobnikj/keboola-input-mapping").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)