The Ayakashi configuration file

The complete configuration reference of the ayakashi.config.js file.

Table of contents

Global configuration options

Options for the top-level config object.

Option Type Description
headless boolean Setting it to false will disable headless mode.
proxyUrl string Sets a proxy url for all scrapers.
openDevTools boolean Automatically open devTools for every tab. headless must be false for it to have any effect.
persistentSession boolean Persists the session data of all scrapers instead of using a temporary session each time. Learn more here
windowWidth number Sets the width of the browser window. Default is 1920.
windowHeight number Sets the height of the browser window. Default is 1080.
chromePath string Use a custom chrome/chromium executable instead of the auto-downloaded one. Learn more here
ignoreCertificateErrors boolean Ignore all certificate (ssl) errors.
bridgePort number Sets the port of the internal bridge server, default is 9731. Use 0 for a random port.
protocolPort number Sets the port of the internal devTools protocol server, default is 9730. Use 0 for a random port.
workers number Sets the number of workers to use. Defaults to auto which will spawn as many workers as needed by the current pipeline (not more than the total system thread count).
workerConcurrency number Sets the number of steps each worker can execute at the same time. Defaults to 1. It should only be increased if there are more parallel steps than the worker count and the steps are mostly I/O bound.

Step configuration options

The configuration options used for steps inside parallel or waterfall.

Option Type Description
type string The type of the step. Valid values are scraper, renderlessScraper, apiScraper or script.
module string The name of the module.
params object A custom parameters object to pass to the module.
config object Extra configuration for the step. See below
load object Specify external modules that should be loaded by the scraper. See below

Extra step configuration

Options for a step’s config object.

Option Type Description
pipeConsole boolean Set it to false to disable the page console logs from getting printed.
pipeExceptions boolean Set it to false to disable any page uncaught exceptions from getting printed.
localAutoLoad boolean Set it to false to disable automatic loading of local actions, extractors, preloaders and props
emulatorOptions object Specify emulation options to be used by this scraper. See below

Step loading options

Options for a step’s load object.

Option Type Description
extractors array of strings An array of external extractor modules.
actions array of strings An array of external action modules.
preloaders array of strings or objects An array of external preloader modules.

Extra preloader options

load.preloaders can also accept object elements. Here are the options

Option Type Description
module string The preloader’s module name.
as string Set a custom name for the preloader.
waitForDom boolean Set it to true to wait for the DOM to be ready before loading the preloader.

emulatorOptions

Option Type Description
width number Sets the available width.
height number Sets the available height.
mobile boolean Set it to true to emulate a mobile device.
userAgent random / desktop / mobile / chrome-desktop / chrome-mobile Configures the userAgent for this scraper. By default a random chrome-desktop userAgent is used.
acceptLanguage string Configures the language for this scraper. It will be applied as the browser’s language and on the Accept-Language header on HTTP requests. Defaults to en-US.
platform Win32 / MacIntel / Linux armv8l / Linux armv7l / iPad / iPhone / Linux x86_64 Configures the value navigator.platform should return. Defaults to Win32 for desktop and Linux armv8l for mobile. Setting a custom platform will also affect the generated userAgent.