Geizhals.de Price Comparison Scraper avatar
Geizhals.de Price Comparison Scraper

Pricing

Pay per event

Go to Apify Store
Geizhals.de Price Comparison Scraper

Geizhals.de Price Comparison Scraper

Developed by

BarriereFix

BarriereFix

Maintained by Community

Extract product prices, offer counts, categories, and detailed specifications from Geizhals.de - Germany's #2 price comparison website with 7.2M monthly visits. Perfect for price tracking, competitive intelligence, market research, and automation workflows (n8n, Zapier, Make.com).

5.0 (1)

Pricing

Pay per event

0

2

2

Last modified

a day ago

πŸ‡©πŸ‡ͺ The ONLY dedicated Geizhals.de scraper on Apify Marketplace

Extract product prices, offer counts, categories, and detailed specifications from Geizhals.de - Germany's #2 price comparison website with 7.2M monthly visits. Perfect for price tracking, competitive intelligence, market research, and automation workflows (n8n, Zapier, Make.com).

Features

πŸ“¦ Product Data Extraction

  • Complete product details (name, ID, URL)
  • Current lowest prices (EUR)
  • Offer count (number of shops selling each product)
  • High-quality product images
  • Category classification (Grafikkarten, Prozessoren, etc.)
  • Detailed technical specifications (Speicher, Chipsatz, etc.)

🎯 Flexible Search Options

  • Search Query: Enter keywords like "RTX 4090", "iPhone 15", "Samsung Monitor"
  • Category URL: Scrape entire Geizhals category pages
  • Product URLs: Target specific product pages

πŸ“Š Advanced Filters

  • Price range filtering (EUR)
  • Maximum items limit (1-1000)
  • Price history tracking for scheduled runs

πŸ›‘οΈ Anti-Bot Protection

  • Bypasses Cloudflare protection
  • Uses German residential proxies
  • Human behavior simulation (mouse movements, scrolling)
  • 85-95% success rate

Use Cases

πŸ’° Price Tracking & Monitoring

Track GPU, CPU, and component prices for gaming PC builds. Set up automated price alerts and monitor historical price changes.

πŸ” Competitive Intelligence

Monitor competitor pricing strategies, track product availability, analyze merchant ratings, and compare specification offerings.

πŸ“Š Market Research

Identify trending tech products in Germany, analyze product specifications trends, study category performance, and understand price distribution.

πŸ€– Automation Workflows

Schedule daily/weekly scrapes, receive price drop alerts via webhooks, integrate with n8n/Zapier/Make.com, and feed data to Google Sheets or databases.

Input

FieldTypeRequiredDescription
queryStringNo*Search query (e.g., "RTX 4090")
categoryUrlStringNo*Direct Geizhals category URL
productUrlsArrayNo*List of specific product URLs
maxItemsNumberNoMax products (default: 100, max: 1000)
priceMinNumberNoMinimum price in EUR
priceMaxNumberNoMaximum price in EUR
trackPriceHistoryBooleanNoEnable price tracking (default: false)

*At least one search method (query, categoryUrl, or productUrls) is required.

Output

Perfect for automation tools like n8n, Zapier, Make.com, Google Sheets, and databases.

Flat, automation-friendly JSON structure:

{
"productId": "112339",
"productName": "ASUS GeForce RTX 4090 24GB GDDR6X",
"productUrl": "https://geizhals.de/...",
"lowestPrice": 2789.99,
"currency": "EUR",
"offerCount": 9,
"imageUrl": "https://...",
"category": "Grafikkarten",
"specifications": {
"Speicher": "24GB GDDR6X"
},
"scrapedAt": "2025-10-24T13:34:54.722Z"
}

Quick Start

Local Testing

# Install dependencies
npm install
# Run with test input
npm run dev
# Or use Apify CLI
apify run --input-file test-input.json

Example Input (test-input.json)

{
"query": "RTX 4090",
"maxItems": 10,
"priceMin": 1000,
"priceMax": 2500
}

Running on Apify

  1. Visit Apify Console
  2. Create new actor or import this repository
  3. Configure input parameters
  4. Run the actor
  5. Download results as JSON, CSV, or Excel

Integration Examples

n8n Workflow

1. Schedule: Daily at 6 AM
2. Apify β†’ Run Geizhals Scraper (query: "RTX 4090")
3. Filter: Price < €1800
4. Compare: With yesterday's prices
5. Telegram: Send notification on drops > 10%
6. Google Sheets: Log results

Zapier Automation

1. Schedule: Weekly on Monday
2. Apify β†’ Geizhals Scraper (rating > 4.5)
3. Compare: Amazon pricing
4. Airtable: Update inventory
5. Email: Weekly price report

Make.com Scenario

1. Webhook: Manual/scheduled trigger
2. Apify β†’ Geizhals Scraper (category: Graphics Cards)
3. Calculate: Price-per-performance
4. Discord: Post top 5 deals
5. PostgreSQL: Archive data

Technical Details

Anti-Bot Strategy

  • Method: Playwright + Crawlee fingerprinting + Stealth plugins
  • Proxies: German residential proxies (MANDATORY)
  • Rate Limiting: 10-12 requests/minute
  • Success Rate: 85-95%
  • Speed: ~10 products/minute

Architecture

  • Base Image: apify/actor-node-playwright-chrome:20
  • Language: TypeScript (compiled to CommonJS)
  • Framework: Crawlee (Apify SDK v3)
  • Validation: Zod schemas
  • Browser: Playwright (Chromium)

Cloudflare Bypass Techniques

  1. Crawlee's built-in browser fingerprinting
  2. German residential proxies (country code: DE)
  3. Session warmup (visit homepage first)
  4. Human behavior simulation (ghost-cursor)
  5. Natural timing patterns (normal distribution)
  6. German locale (de-DE) headers

Pricing

Pay-Per-Result Model:

  • $0.003/product - Only pay for successfully scraped products
  • Typical run: 100 products = $0.30
  • No hidden compute costs
  • Free tier: First 500 products/month (Apify promotion)

Cost Calculation

ProductsCostUse Case
10$0.03Quick test
100$0.30Daily monitoring
500$1.50Weekly deep dive
1000$3.00Full category scrape

Limitations

Robots.txt Compliance

Geizhals.de actively blocks crawlers via robots.txt. This scraper uses residential proxies and human behavior simulation to bypass restrictions ethically while respecting rate limits.

Rate Limits

  • Maximum 10-12 products/minute to avoid detection
  • Sequential processing (no parallel requests)
  • Natural delays between actions

Coverage

  • Supported: Geizhals.de (Germany)
  • Coming soon: Geizhals.at (Austria)
  • Not supported: EU-wide (other countries)

Best For

  • Electronics, computers, gaming hardware
  • Tech products with detailed specs
  • Not ideal for fashion, furniture, or non-tech categories

Troubleshooting

Issue: Empty Results

Possible causes:

  1. Cloudflare challenge triggered
  2. Incorrect search query
  3. All products filtered out

Solutions:

  • Check storage/key_value_stores/default/search-page.html for debugging
  • Look for cloudflare-blocked.html to confirm blocking
  • Adjust filters (minRating, priceMin/Max)
  • Try different search query

Issue: "Cloudflare challenge detected"

Solutions:

  • German residential proxies are MANDATORY (automatically configured)
  • Reduce maxItems to lower detection risk
  • Add longer delays between runs
  • Contact support if persists

Issue: Selector Not Found

Cause: Geizhals.de changed their HTML structure

Solution:

  • Check search-page.html in storage
  • Report issue to kontakt@barrierefix.de
  • We update selectors within 24 hours

Development

Project Structure

geizhals-scraper-pro/
β”œβ”€β”€ src/
β”‚ β”œβ”€β”€ main.ts # Entry point & scraper logic
β”‚ β”œβ”€β”€ types.ts # TypeScript interfaces + Zod schemas
β”‚ └── human-behavior.ts # Anti-bot behavior simulation
β”œβ”€β”€ .actor/
β”‚ β”œβ”€β”€ actor.json # Apify metadata
β”‚ β”œβ”€β”€ INPUT_SCHEMA.json # Input form definition
β”‚ └── DATASET_SCHEMA.json # Output structure
β”œβ”€β”€ Dockerfile # Playwright-enabled container
β”œβ”€β”€ package.json # Dependencies
β”œβ”€β”€ tsconfig.json # TypeScript config
└── test-input.json # Example input

Building Locally

npm install # Install dependencies + build
npm run build # Compile TypeScript
npm start # Run compiled code
npm run dev # Build + run with Apify CLI

Testing

# Test with sample input
npm run dev
# Test specific query
echo '{"query": "RTX 4090", "maxItems": 5}' > INPUT.json
apify run --input-file INPUT.json
# Check output
cat storage/datasets/default/*.json

Deploying

# Login to Apify
apify login
# Push to Apify
apify push
# Or via Git integration
git push origin main

Roadmap

Phase 2 - Coming Soon:

  • Historical price tracking dashboard
  • Price drop webhook notifications
  • Multi-merchant comparison
  • Specification normalization
  • Geizhals.at support (Austria)
  • Bulk product monitoring
  • Price alert threshold configuration

Support

  • Email: kontakt@barrierefix.de
  • Response Time: < 24 hours
  • Bug Reports: Via Apify Support or email
  • Feature Requests: Email with use case description

This actor scrapes publicly available data from Geizhals.de. Use responsibly and in compliance with:

  • German data protection laws (GDPR)
  • Geizhals.de Terms of Service
  • Apify Terms of Service

Important:

  • Do not republish copyrighted content (images, descriptions) without permission
  • Respect rate limits to avoid overloading Geizhals servers
  • Use for personal/commercial research, not to replicate Geizhals business

Barrierefix is not affiliated with Geizhals GmbH.

License

MIT License - See LICENSE file for details

About

Built by Barrierefix - Professional web scraping solutions for German market.


πŸ”— Explore More of Our Actors

πŸ“Š Price Comparison (German Market)

ActorDescription
Billiger.de ScraperExtract prices from Germany's largest price comparison platform
Testberichte Scraper ProExtract product reviews and ratings from Testberichte.de
Chip.de Bestenlisten ScraperScrape Chip.de best-of lists for tech product rankings

πŸš— Automotive (German Market)

ActorDescription
German Car ScraperScrape AutoScout24 and Mobile.de for vehicle listings
eBay Kleinanzeigen ScraperExtract classified ads from eBay Kleinanzeigen

🍳 German Content & Lifestyle

ActorDescription
Chefkoch ScraperExtract recipes and cooking instructions from Chefkoch.de
Gutefrage ScraperScrape Q&A content from Gutefrage.net for market research

πŸ›’ E-commerce

ActorDescription
Shopify Scraper ProExtract complete Shopify product data with variants and sales estimates
eBay Scraper (PPR)Extract eBay products with seller analytics and engagement metrics

Last Updated: October 2025 Version: 1.0.0 Maintenance Status: βœ… Actively Maintained