Skip to main content
Spider settings control extraction strategies, concurrency, delays, and feature flags.

Common Settings

EXTRACTOR_ORDER
string[]
default:"null"
Extraction strategy order (tries each until success)Allowed values:
  • "newspaper" - Newspaper4k extractor
  • "trafilatura" - Trafilatura extractor
  • "custom" - Custom CSS selectors (requires CUSTOM_SELECTORS)
  • "playwright" - Browser rendering (for JS content)
Example:
Common patterns:
  • ["newspaper", "trafilatura"] - Generic news/blogs
  • ["custom", "newspaper"] - Custom selectors with fallback
  • ["playwright", "trafilatura"] - JS-rendered content
See Extractors Overview for strategy details.
CUSTOM_SELECTORS
object
default:"null"
CSS selectors for custom extractionRequired for: "custom" in EXTRACTOR_ORDERStandard fields (map to DB columns):
  • title → scraped_items.title
  • content → scraped_items.content
  • author → scraped_items.author
  • date → scraped_items.published_date
Any other fields → stored in metadata_json columnExample:
See Custom Extractors for details.
CONCURRENT_REQUESTS
integer
default:"null"
Maximum concurrent requestsValidation:
  • Min: 1
  • Max: 32
Recommended:
  • Small sites: 8-16
  • Large sites: 16-32
  • Playwright enabled: 2-4
Example:
DOWNLOAD_DELAY
float
default:"null"
Delay between requests (seconds)Validation:
  • Min: 0
  • Max: 60
Recommended:
  • Polite crawling: 1-2
  • Aggressive: 0-0.5
  • Rate-limited sites: 2-5
Example:

Cloudflare Settings

CLOUDFLARE_ENABLED
boolean
default:"null"
Enable Cloudflare bypassExample:
CLOUDFLARE_STRATEGY
string
default:"null"
Cloudflare bypass strategyAllowed values:
  • "hybrid" - Try normal request first, fallback to browser
  • "browser_only" - Always use browser
Example:

Playwright Settings

PLAYWRIGHT_WAIT_SELECTOR
string
default:"null"
CSS selector to wait for before extractingTimeout: 30 secondsExample:
See Playwright Extractor for details.
PLAYWRIGHT_DELAY
float
default:"null"
Additional seconds to wait after page loadExample:
INFINITE_SCROLL
boolean
default:"null"
Enable infinite scroll behaviorRequires: "playwright" in EXTRACTOR_ORDERExample:
MAX_SCROLLS
integer
default:"5"
Maximum scroll iterationsUsed with: INFINITE_SCROLL: trueExample:
SCROLL_DELAY
float
default:"1.0"
Delay between scrolls (seconds)Used with: INFINITE_SCROLL: trueExample:

Scrapy Settings

ROBOTSTXT_OBEY
boolean
default:"null"
Respect robots.txtExample:
DEPTH_LIMIT
integer
default:"null"
Maximum crawl depthExample:

Advanced Features

DELTAFETCH_ENABLED
boolean
default:"null"
Enable delta fetching (skip already-crawled URLs)Example:

Configuration Examples

News Site (Generic Extractors)

E-commerce (Custom Selectors)

JS-Rendered Site

Cloudflare-Protected Site

Infinite Scroll Page

Custom Settings

Arbitrary key-value pairs for custom Scrapy settings (passed directly without validation):

Validation Errors

Unknown Extractor

Fix: Use valid extractor name

Invalid Cloudflare Strategy

Fix: Use "hybrid" or "browser_only"

Out of Range

Fix: Use value within allowed range