# Jofogas Product Search Scraper (`stealth_mode/jofogas-product-search-scraper`) Actor

Scrape product listings from Jofogas.hu — Hungary's leading classifieds platform. Extract titles, prices, locations, images, seller contacts, and 50+ fields per listing. Perfect for price monitoring, market research, and competitive analysis.

- **URL**: https://apify.com/stealth\_mode/jofogas-product-search-scraper.md
- **Developed by:** [Stealth mode](https://apify.com/stealth_mode) (community)
- **Categories:** Automation, Developer tools, E-commerce
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Jofogas.hu Product Search Scraper: Extract Classified Ads at Scale

**Excerpt:** Scrape product listings from Jofogas.hu — Hungary's leading classifieds platform. Extract titles, prices, locations, images, seller contacts, and 50+ fields per listing. Perfect for price monitoring, market research, and competitive analysis.

---

### What Is Jofogas.hu?

Jofogas.hu is one of Hungary's most popular online classifieds marketplaces, hosting millions of listings across categories including vehicles, electronics, real estate, bicycles, and more. The platform operates similarly to OLX or Craigslist, enabling private sellers and businesses to post ads nationwide.

Manually collecting listing data from Jofogas is impractical at scale. The **Jofogas.hu Product Search Scraper** automates extraction from search result pages, delivering structured records for every listing found.

---

### Overview

This scraper targets Jofogas.hu category and search result pages, collecting all visible listings per page or paginated URL. It suits:

- **Price monitoring services** tracking market rates for specific goods
- **E-commerce sellers** researching competitor pricing
- **Data analysts** studying supply/demand patterns in Hungarian classifieds
- **Aggregator platforms** building multi-source listing databases

---

### Input Format

```json
{
  "urls": ["https://www.jofogas.hu/magyarorszag/kerekparok-es-alkatreszek?o=2"],
  "ignore_url_failures": true,
  "max_items_per_url": 50
}
````

| Field | Type | Description |
|---|---|---|
| `urls` | `array` | Search or category page URLs to scrape. Add one per line or use bulk edit. Example: `https://www.jofogas.hu/magyarorszag/kerekparok-es-alkatreszek?o=2` |
| `ignore_url_failures` | `boolean` | If `true`, the scraper continues when a URL fails instead of stopping the entire run. Recommended for bulk jobs. Default: `true` |
| `max_items_per_url` | `integer` | Maximum number of listings to collect per URL. Default: `20`. Increase for deeper pagination coverage. |

> **Tip:** Use the `?o=N` query parameter in Jofogas URLs to target specific result pages (e.g., `?o=2` = page 2).

***

### Output Format

**Sample output**

```json
{
  "list_id": 160449672,
  "list_time": {
    "label": "tegnap, 21:59",
    "value": "1779134373"
  },
  "account_list_id": "a7929dee291c1ac62f39541250ea7a6c",
  "url": "https://www.jofogas.hu/bacs_kiskun/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_160449672.htm",
  "company_ad": false,
  "subject": "Kalkhoff 625wh! elektromos kerékpár pedelec ebike e-bike garancia",
  "body": "Prémium kategóriás német pedelec kerékpár. <br>Nagyszerű választás városi közlekedéshez, kiránduláshoz, munkábajáráshoz.<br>Alumínium vázas 50cm és duplafalú alufelnis.<br>Minőségi defektvédett gumikkal szerelt<br>Teleszkópos elsővillával és rugós nyeregcsővel, kényelmes nyereggel.<br>Shimano 8 sebességes láncváltóval<br>Hidraulikus tárcsafékes<br>Shimano agydinamóval és Axa led lámpákkal rendelkezik.<br>Patkólakattal és zárható akkuval.<br>Nyomatékszenzoros német impulse 2.0 középmotorral<br>Az elektromos rásegítés 3fokozatban állítható<br>Multifunkcionális digitális kijelzővel<br>Extra teljesítményű 36v 17ah 625wh lítium akkuval<br>Gyári töltőjével és kulcsával eladó.<br>60 ebike egyhelyen.<br>A vevőnek a helyszinen 50 féle elektromos kerékpáron letekert 70.000km-es tapasztalattal segítek a tipusválasztásban és a méretre állításban is.<br>A teljes elektromos rendszerre, az akkura is garanciát vállalok.<br>Az akku 100% állapotú, tesztes, így bármikor ellenőrizhető.<br>Csak személyes átvétel lehetséges Kiskunfélegyházán.<br>Csere beszámítás nem érdekel.<br>Vásárlási szándékával legyenszives telefonon keressen.<br>Várom szeretettel 205980011<br>Hibátlan működés, 100km hatótáv!",
  "latitude": 46.7050953,
  "longitude": 19.8499199,
  "price": {
    "label": "330 000 Ft",
    "value": 330000
  },
  "buyer_protection_fee": null,
  "price_with_buyer_protection_fee": null,
  "images": [
    {
      "mime_type": "image/jpg",
      "name": "Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_791362799502361.jpg",
      "extension_name": "jpg",
      "url": "https://img.jofogas.hu/thumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_791362799502361.jpg",
      "id": "791362799502361.jpg",
      "image_size_variations": [
        {
          "type": "bigthumbs",
          "url": "https://img.jofogas.hu/bigthumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_791362799502361.jpg",
          "width": 234,
          "height": 177
        },
        {
          "type": "images",
          "url": "https://img.jofogas.hu/images/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_791362799502361.jpg"
        },
        {
          "type": "620x620aspect",
          "url": "https://img.jofogas.hu/620x620aspect/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_791362799502361.jpg"
        }
      ]
    },
    {
      "mime_type": "image/jpg",
      "name": "Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_750442799502357.jpg",
      "extension_name": "jpg",
      "url": "https://img.jofogas.hu/thumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_750442799502357.jpg",
      "id": "750442799502357.jpg",
      "image_size_variations": [
        {
          "type": "bigthumbs",
          "url": "https://img.jofogas.hu/bigthumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_750442799502357.jpg",
          "width": 234,
          "height": 177
        },
        {
          "type": "images",
          "url": "https://img.jofogas.hu/images/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_750442799502357.jpg"
        },
        {
          "type": "620x620aspect",
          "url": "https://img.jofogas.hu/620x620aspect/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_750442799502357.jpg"
        }
      ]
    },
    {
      "mime_type": "image/jpg",
      "name": "Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_779192799502183.jpg",
      "extension_name": "jpg",
      "url": "https://img.jofogas.hu/thumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_779192799502183.jpg",
      "id": "779192799502183.jpg",
      "image_size_variations": [
        {
          "type": "bigthumbs",
          "url": "https://img.jofogas.hu/bigthumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_779192799502183.jpg",
          "width": 234,
          "height": 177
        },
        {
          "type": "images",
          "url": "https://img.jofogas.hu/images/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_779192799502183.jpg"
        },
        {
          "type": "620x620aspect",
          "url": "https://img.jofogas.hu/620x620aspect/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_779192799502183.jpg"
        }
      ]
    },
    {
      "mime_type": "image/jpg",
      "name": "Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_773542799502359.jpg",
      "extension_name": "jpg",
      "url": "https://img.jofogas.hu/thumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_773542799502359.jpg",
      "id": "773542799502359.jpg",
      "image_size_variations": [
        {
          "type": "bigthumbs",
          "url": "https://img.jofogas.hu/bigthumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_773542799502359.jpg",
          "width": 234,
          "height": 177
        },
        {
          "type": "images",
          "url": "https://img.jofogas.hu/images/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_773542799502359.jpg"
        },
        {
          "type": "620x620aspect",
          "url": "https://img.jofogas.hu/620x620aspect/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_773542799502359.jpg"
        }
      ]
    },
    {
      "mime_type": "image/jpg",
      "name": "Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_772362799502360.jpg",
      "extension_name": "jpg",
      "url": "https://img.jofogas.hu/thumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_772362799502360.jpg",
      "id": "772362799502360.jpg",
      "image_size_variations": [
        {
          "type": "bigthumbs",
          "url": "https://img.jofogas.hu/bigthumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_772362799502360.jpg",
          "width": 234,
          "height": 177
        },
        {
          "type": "images",
          "url": "https://img.jofogas.hu/images/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_772362799502360.jpg"
        },
        {
          "type": "620x620aspect",
          "url": "https://img.jofogas.hu/620x620aspect/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_772362799502360.jpg"
        }
      ]
    },
    {
      "mime_type": "image/jpg",
      "name": "Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_784122799502189.jpg",
      "extension_name": "jpg",
      "url": "https://img.jofogas.hu/thumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_784122799502189.jpg",
      "id": "784122799502189.jpg",
      "image_size_variations": [
        {
          "type": "bigthumbs",
          "url": "https://img.jofogas.hu/bigthumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_784122799502189.jpg",
          "width": 234,
          "height": 177
        },
        {
          "type": "images",
          "url": "https://img.jofogas.hu/images/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_784122799502189.jpg"
        },
        {
          "type": "620x620aspect",
          "url": "https://img.jofogas.hu/620x620aspect/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_784122799502189.jpg"
        }
      ]
    },
    {
      "mime_type": "image/jpg",
      "name": "Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_793242799502277.jpg",
      "extension_name": "jpg",
      "url": "https://img.jofogas.hu/thumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_793242799502277.jpg",
      "id": "793242799502277.jpg",
      "image_size_variations": [
        {
          "type": "bigthumbs",
          "url": "https://img.jofogas.hu/bigthumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_793242799502277.jpg",
          "width": 234,
          "height": 177
        },
        {
          "type": "images",
          "url": "https://img.jofogas.hu/images/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_793242799502277.jpg"
        },
        {
          "type": "620x620aspect",
          "url": "https://img.jofogas.hu/620x620aspect/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_793242799502277.jpg"
        }
      ]
    },
    {
      "mime_type": "image/jpg",
      "name": "Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_792202799502362.jpg",
      "extension_name": "jpg",
      "url": "https://img.jofogas.hu/thumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_792202799502362.jpg",
      "id": "792202799502362.jpg",
      "image_size_variations": [
        {
          "type": "bigthumbs",
          "url": "https://img.jofogas.hu/bigthumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_792202799502362.jpg",
          "width": 234,
          "height": 177
        },
        {
          "type": "images",
          "url": "https://img.jofogas.hu/images/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_792202799502362.jpg"
        },
        {
          "type": "620x620aspect",
          "url": "https://img.jofogas.hu/620x620aspect/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_792202799502362.jpg"
        }
      ]
    },
    {
      "mime_type": "image/jpg",
      "name": "Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_792382799502278.jpg",
      "extension_name": "jpg",
      "url": "https://img.jofogas.hu/thumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_792382799502278.jpg",
      "id": "792382799502278.jpg",
      "image_size_variations": [
        {
          "type": "bigthumbs",
          "url": "https://img.jofogas.hu/bigthumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_792382799502278.jpg",
          "width": 234,
          "height": 177
        },
        {
          "type": "images",
          "url": "https://img.jofogas.hu/images/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_792382799502278.jpg"
        },
        {
          "type": "620x620aspect",
          "url": "https://img.jofogas.hu/620x620aspect/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_792382799502278.jpg"
        }
      ]
    },
    {
      "mime_type": "image/jpg",
      "name": "Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_799962799502279.jpg",
      "extension_name": "jpg",
      "url": "https://img.jofogas.hu/thumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_799962799502279.jpg",
      "id": "799962799502279.jpg",
      "image_size_variations": [
        {
          "type": "bigthumbs",
          "url": "https://img.jofogas.hu/bigthumbs/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_799962799502279.jpg",
          "width": 234,
          "height": 177
        },
        {
          "type": "images",
          "url": "https://img.jofogas.hu/images/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_799962799502279.jpg"
        },
        {
          "type": "620x620aspect",
          "url": "https://img.jofogas.hu/620x620aspect/Kalkhoff_625wh__elektromos_kerekpar_pedelec_ebike_e_bike_garancia_799962799502279.jpg"
        }
      ]
    }
  ],
  "badges": [
    {
      "type": "gallery"
    }
  ],
  "parameters": [
    {
      "key": "zipcode",
      "label": "Irányítószám",
      "values": [
        {
          "value": "6100",
          "label": "Kiskunfélegyháza"
        }
      ],
      "order": 1
    },
    {
      "key": "city",
      "label": "Helység",
      "values": [
        {
          "value": "214",
          "label": "Kiskunfélegyháza"
        }
      ],
      "order": 106
    },
    {
      "key": "bicycle_sex_type",
      "label": "Váztípus",
      "values": [
        {
          "value": "1",
          "label": "Női"
        }
      ],
      "order": 85
    },
    {
      "key": "bicycle_condition",
      "label": "Állapot",
      "values": [
        {
          "value": "2",
          "label": "újszerű"
        }
      ],
      "order": 440
    },
    {
      "key": "freetime_color_one",
      "label": "Szín",
      "values": [
        {
          "value": "10",
          "label": "színes, mintás"
        }
      ],
      "order": 442
    },
    {
      "key": "adultbicycle_size",
      "label": "Méret",
      "values": [
        {
          "value": "14",
          "label": "28''"
        }
      ],
      "order": 458
    },
    {
      "key": "adultbicycle_type",
      "label": "Típus",
      "values": [
        {
          "value": "9",
          "label": "E-bike, Enduro, DH"
        }
      ],
      "order": 474
    },
    {
      "key": "bicycle_brand",
      "label": "Márka",
      "values": [
        {
          "value": "53",
          "label": "Egyéb"
        }
      ],
      "order": 534
    }
  ],
  "category_tree": [
    {
      "id": "4000",
      "name": "Szabadidő, sport"
    },
    {
      "id": "4310",
      "name": "Kerékpárok és alkatrészek"
    },
    {
      "id": "4316",
      "name": "Felnőtt kerékpár"
    }
  ],
  "type": {
    "label": "Eladó",
    "value": "s"
  },
  "region": {
    "label": "Bács-Kiskun",
    "value": "2"
  },
  "paid_position": true,
  "vertical": "generalist",
  "index": 1,
  "profile_data": {
    "avatar_image": "https://img.jofogas.hu/bigavatar/53/12/5/_531251575851569.jpg",
    "user_name": "László",
    "account_type": "private",
    "badges": [
      {
        "type": "private_ad",
        "label": "Magánszemély"
      }
    ]
  },
  "from_url": "https://www.jofogas.hu/magyarorszag/kerekparok-es-alkatreszek"
}
```

Each listing yields a record with 50+ fields:

#### Identification & Routing

| Field | Meaning |
|---|---|
| `ID` | Unique Jofogas listing identifier |
| `Category ID` | Top-level category numeric ID |
| `Micro Category ID` | Sub-category ID for granular classification |
| `Location ID` | Numeric ID of the listing's location |
| `URL Path` | Relative URL path to the full listing detail page |
| `Type` | Listing type (e.g., standard, professional, marketplace) |

#### Content

| Field | Meaning |
|---|---|
| `Title` | Listing headline as posted by the seller |
| `Description` | Full ad description text |
| `Category` | Human-readable category name |
| `Location` | City or region name |
| `Address Detailed` | More granular location breakdown |
| `Coords` | Geographic coordinates (latitude/longitude) |
| `Geo` | Additional geo metadata |
| `Closest Address ID` | ID of the nearest indexed address |

#### Pricing

| Field | Meaning |
|---|---|
| `Price Detailed` | Full price object including currency and formatting |
| `Normalized Price` | Standardized numeric price for comparison |
| `Price Without Discount` | Original price before any discount applied |
| `Discount Percent` | Percentage discount if a promotion is active |
| `Last Minute Offer` | Flag indicating a time-sensitive deal |
| `IVA` | VAT/tax indicator where applicable |

#### Timestamps

| Field | Meaning |
|---|---|
| `Sort Time Stamp` | Timestamp used for sort order in results |
| `Allow Time Stamp` | When the listing was approved/activated |
| `Job Seeker Update Time Stamp` | Last update timestamp (used for job-type listings) |
| `Turn Off Date` | Scheduled or actual expiry date of the listing |

#### Media

| Field | Meaning |
|---|---|
| `Images` | Array of image URLs attached to the listing |
| `Images Count` | Total number of images |
| `Gallery` | Extended gallery data object |
| `Phone Image` | Obfuscated phone number rendered as an image |
| `Has Video` | Boolean — whether a video is attached |
| `Native Video` | Video metadata if present |
| `User Logo` | Seller's profile logo or avatar URL |

#### Seller & Contact

| Field | Meaning |
|---|---|
| `Contacts` | Seller contact information object |
| `Is Verified Item` | Whether the listing has been verified by Jofogas |
| `Is Marketplace` | Whether the seller is a registered marketplace/business |
| `Rating` | Seller rating score |
| `Rating Experiment Group` | A/B test group for rating display |
| `Is Rating Experiment` | Flag indicating rating experiment participation |

#### Listing Flags & Features

| Field | Meaning |
|---|---|
| `Is Favorite` | Whether the listing is saved as a favorite (session-dependent) |
| `Is New` | Whether the item is listed as new condition |
| `Is Reserved` | Whether the item has been reserved by a buyer |
| `Is XL` | Whether the listing uses XL/promoted display format |
| `Has Footer` | Whether an extended footer is shown on the listing |
| `Has Realty Layout` | Whether real estate-specific layout is applied |
| `Is RE Map Promotion` | Real estate map promotion flag |
| `Is Similar To Search` | Whether the listing was included as a "similar" result |
| `Open In New Tab` | Whether the listing link opens in a new browser tab |
| `Is Spare Parts Compatibility` | Flag for vehicle spare parts compatibility data |
| `Is New Cars Extra Leads View` | Flag for new car dealer lead capture view |
| `Group Data` | Grouping metadata for multi-item or variant listings |

***

### How to Use

1. **Get a search URL** — Browse Jofogas.hu, apply your filters (category, location, keyword), and copy the results page URL.
2. **Paginate if needed** — Append `?o=2`, `?o=3`, etc. to target additional pages, and add each to the `urls` array.
3. **Set item limit** — Use `max_items_per_url` to cap results. Set higher (e.g., `100`) for comprehensive category sweeps.
4. **Enable fault tolerance** — Keep `ignore_url_failures: true` for multi-URL runs.
5. **Export** — Download results as JSON or CSV for use in Excel, Google Sheets, or a database.

**Common issues:**

- Listings showing `Is Similar To Search: true` are recommended results, not exact matches — filter these out if needed.
- `Phone Image` returns an image URL, not plain text, as Jofogas obfuscates phone numbers.

***

### Use Cases & Business Value

- **Price tracking:** Monitor bicycle, electronics, or vehicle prices over time
- **Market sizing:** Count active listings by category and region
- **Lead generation:** Identify sellers in specific categories for B2B outreach
- **Academic research:** Study informal market behavior in Hungarian classifieds

***

### Conclusion

The **Jofogas.hu Product Search Scraper** turns paginated classified search results into clean, structured datasets with minimal configuration. With 50+ output fields covering pricing, media, location, and seller metadata, it provides everything needed for serious market analysis or product data pipelines. Point it at any Jofogas category URL and start collecting.

# Actor input Schema

## `urls` (type: `array`):

Add the URLs of the product search list urls you want to scrape. You can paste URLs one by one, or use the Bulk edit section to add a prepared list.

## `ignore_url_failures` (type: `boolean`):

If true, the scraper will continue running even if some URLs fail to be scraped.

## `max_items_per_url` (type: `integer`):

The maximum number of items to scrape per URL.

## Actor input object example

```json
{
  "urls": [
    "https://www.jofogas.hu/magyarorszag/kerekparok-es-alkatreszek?o=2"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "urls": [
        "https://www.jofogas.hu/magyarorszag/kerekparok-es-alkatreszek?o=2"
    ],
    "ignore_url_failures": true,
    "max_items_per_url": 20
};

// Run the Actor and wait for it to finish
const run = await client.actor("stealth_mode/jofogas-product-search-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "urls": ["https://www.jofogas.hu/magyarorszag/kerekparok-es-alkatreszek?o=2"],
    "ignore_url_failures": True,
    "max_items_per_url": 20,
}

# Run the Actor and wait for it to finish
run = client.actor("stealth_mode/jofogas-product-search-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "urls": [
    "https://www.jofogas.hu/magyarorszag/kerekparok-es-alkatreszek?o=2"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20
}' |
apify call stealth_mode/jofogas-product-search-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=stealth_mode/jofogas-product-search-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Jofogas Product Search Scraper",
        "description": "Scrape product listings from Jofogas.hu — Hungary's leading classifieds platform. Extract titles, prices, locations, images, seller contacts, and 50+ fields per listing. Perfect for price monitoring, market research, and competitive analysis.",
        "version": "0.0",
        "x-build-id": "swnZWuJ1kcKiGPaJn"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/stealth_mode~jofogas-product-search-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-stealth_mode-jofogas-product-search-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/stealth_mode~jofogas-product-search-scraper/runs": {
            "post": {
                "operationId": "runs-sync-stealth_mode-jofogas-product-search-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/stealth_mode~jofogas-product-search-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-stealth_mode-jofogas-product-search-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "urls": {
                        "title": "URLs of the product search list urls to scrape",
                        "type": "array",
                        "description": "Add the URLs of the product search list urls you want to scrape. You can paste URLs one by one, or use the Bulk edit section to add a prepared list.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "ignore_url_failures": {
                        "title": "Continue running even if some URLs fail to be scraped",
                        "type": "boolean",
                        "description": "If true, the scraper will continue running even if some URLs fail to be scraped."
                    },
                    "max_items_per_url": {
                        "title": "Max items per URL",
                        "type": "integer",
                        "description": "The maximum number of items to scrape per URL."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
