Home/Docs/Troubleshooting

Troubleshooting

Blocked pages, empty extractors, OCR, OAuth, timeouts — symptom → cause → fix.

Symptom → likely cause → what to do. Every item here is something that happened during testing.

Pages and sessions#

SymptomCauseFix
challenge: captcha / cloudflare / login on a session or scrapeThe site challenged a headless browser or your IPCrawlGenie does not solve challenges. Take over in the live view, use a profile with a saved login, or route through a residential proxy. Turn on signed agent so sites that honour Web Bot Auth can recognise you.
Extractor returns 0 rows with "Blocked"Same as above, or the site needs a proxy (needs: proxy in the catalogue)Run with session.proxy, or pick an API-backed extractor for the same data
Extractor returns 0 rows, no challengeThe page structure changed or the search had no resultsOpen the URL in a session and look; use css_extract or auto_list as a fallback; report the extractor id
navigation_blocked … private networkSSRF guardSet policy.allowPrivateNetwork: true for that session, or VESSEL_SSRF_GUARD=false on a trusted network
Session ended with idle_timeoutNo action for the idle windowRaise policy.idleTimeoutSec or the default in Settings
Snapshot is hugePage has thousands of interactive nodesUse mode: interactive, maxTokens, or q= on text; prefer web_answer when you only need to read
Approval never resolvesNobody decidedApprovals page, webhook approval.pending, or set approvals.timeoutSec

Documents and OCR#

SymptomCauseFix
PDF returns almost no textScanned PDFocr: auto already triggers on sparse text; use ocr: force if the text layer is garbage
OCR says "language data unreachable"First run needs to download Tesseract dataAllow outbound HTTPS once, or pre-seed data/tesseract
Table columns are mergedCells are closer than the column thresholdUse granularity: sentence with q, or export the page range and post-process; report the PDF
Google Doc returns HTML or 401The document is not shared "anyone with the link"Share it, or export manually and upload
YouTube: "no transcript"Video has no caption trackNothing to read without a speech model

Connectors, MCP and auth#

SymptomCauseFix
ChatGPT / Claude cannot connectCrawlGenie is not reachable over public HTTPS, or VESSEL_PUBLIC_URL differs from the URL you enteredSet VESSEL_PUBLIC_URL to the exact public origin and restart; check /.well-known/oauth-authorization-server
Consent page says "cross-site request refused"CSRF guardOpen the consent page from the platform's flow, not from a saved link
401 unauthorized from /v1Missing or wrong keyAuthorization: Bearer <key>; create keys under API keys
Savings page shows no connector lineNo session has been created through that connector yetAsk the platform to use a CrawlGenie tool once; the channel appears as connector:<name>

Watches and schedules#

SymptomCauseFix
Watch never runsServer was down at cron time, or hosted on a platform that sleepsUse POST /v1/tick from an external scheduler (GitHub Actions, Cloud Scheduler)
Every run reports "changed"The page contains a clock, counters or rotating contentUse an extractor with a key (rows) instead of change_monitor, or narrow the selector
Webhook not receivedURL unreachable from the server, or no webhookUrlSettings → webhook URL; check the server log for webhook errors

Knowledge and help#

SymptomCauseFix
"Nothing matches" though the text is thereDifferent words than the sourceUse the source's vocabulary, or add a short glossary document
Help assistant answers from the wrong pageSeveral pages share the wordsClick the link to the doc; ask with the feature name (q, pages, watch)
Docs page says the folder is missingThe server runs outside the repo and the image was built without docsSet VESSEL_DOCS_DIR, or rebuild the image (docs are copied in)

Where to look#

  • Session page → Timeline: every step with a screenshot and the policy decisions.
  • GET /v1/sessions/{id}/events and GET /v1/stats for scripts.
  • Server log (JSON): level: 50 lines are unhandled errors; include them in a bug report with your version.

Section: Run · This page as markdown · Questions? hello@crawlgenie.com