# Grok Query Scrape

> Submit prompts to https://grok.com using an authenticated cookie file and capture the generated answer verbatim. Use when the task requires raw prompt passthrough, raw Grok output capture, and reproducible artifacts without JSON parsing.

- Skill: `yang0/grok-query-scrape` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds@latest add yang0/grok-query-scrape`
- Raw SKILL.md: https://api.skillmd.com/api/skills/yang0/grok-query-scrape/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: yang0 (https://skillmd.com/u/yang0)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/yang0/grok-query-scrape

---


# Grok Query Scrape

Use this skill to run a repeatable Grok automation workflow:
- Load Netscape-format cookies (for logged-in session reuse)
- Open Grok in a browser session
- Submit the prompt exactly as provided
- Wait for answer generation to stabilize
- Return and save raw output only (no parsing)

Language guides:
- Chinese guide: [references/usage_zh.md](references/usage_zh.md)
- English guide: [references/usage_en.md](references/usage_en.md)

## Workflow

1. Install runtime dependencies when missing:
```powershell
pip install patchright
```

2. Prepare a cookie file in Netscape format (example: `H:\cookies\grok.txt`).

3. Run the script:
```powershell
python E:\projectHome\skill_grok\skill\grok-query-scrape\scripts\query_grok.py `
  --cookie-file H:\cookies\grok.txt `
  --prompt "Find top 10 AI productivity tweets from the last 24 hours." `
  --output-dir E:\ `
  --basename grok_ai_top10 `
  --wait-seconds 240
```

4. Check outputs:
- `<stdout>`: Grok response text (verbatim capture from `main`)
- `<basename>_raw.txt`: same raw Grok response text saved to file
- `<basename>_meta.json`: run metadata and paths

## Script

Use [query_grok.py](scripts/query_grok.py) for execution.

Key flags:
- `--cookie-file`: Netscape cookie txt path (required)
- `--prompt`: inline prompt
- `--prompt-file`: prompt text file (alternative to `--prompt`)
- `--output-dir`: output folder (default `.`)
- `--basename`: output filename prefix (default `grok_result`)
- `--wait-seconds`: max wait for response stabilization (default `180`)
- `--headless`: run browser headless
- `--new-chat`: send `Ctrl+J` before query to reduce contamination (enabled by default)

## Prompting Guidance

This skill forwards the prompt as-is, so put all constraints directly into your prompt text.

## Failure Handling

If the output format is not what you need:
1. Keep `_raw.txt` as ground truth.
2. Tighten the prompt and retry.
3. Keep `--new-chat` enabled for isolation.
4. Increase `--wait-seconds` when generation is long.

If login fails:
1. Refresh cookie file from a valid browser session.
2. Keep domain/path/secure flags intact in Netscape format.
3. Retry with `--headless` disabled to inspect behavior.

### scripts/
- [query_grok.py](scripts/query_grok.py): submit prompt, wait for answer, return/save raw/meta only.

