A simple web search API that scrapes search engines and returns clean JSON data.
316
Web Search API is a lightweight and fast FastAPI-based web search service. It uses Playwright for reliable web scraping and returns clean, structured JSON results.
docker run -p 5000:5000 goldpulpy/web-search-api:latest
With API Key enabled:
docker run -p 5000:5000 \
-e API_KEY=your-secret-key \
goldpulpy/web-search-api:latest
The API will be available at:
http://localhost:5000
Once the container is running, the interactive docs are available at:
http://localhost:5000/docs
| Variable | Default | Description |
|---|---|---|
HOST | 0.0.0.0 | Server host |
PORT | 5000 | API port |
LOG_LEVEL | INFO | Logging level |
API_KEY | None | API key for protected endpoints (optional) |
API_PREFIX | /api | API route prefix |
ENABLE_DOCS | true | Enable API documentation |
curl http://localhost:5000/api/v1/engines
curl -X POST http://localhost:5000/api/v1/search \
-H "Content-Type: application/json" \
-d '{
"engine": "DuckDuckGo",
"query": "FastAPI search API",
"page": 1
}'
If API key auth is enabled:
-H "Authorization: Bearer YOUR_API_KEY"
version: "3.8"
services:
web-search-api:
image: goldpulpy/web-search-api:latest
container_name: web-search-api
environment:
- API_KEY=your-secret-key
ports:
- "5000:5000"
restart: unless-stopped
mem_limit: 512m
cpus: 0.5
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:5000/health"]
interval: 30s
timeout: 10s
retries: 3
Content type
Image
Digest
sha256:cc1926899…
Size
433.4 MB
Last updated
10 months ago
docker pull goldpulpy/web-search-api