ParseForge Scrapers

Kijiji Classifieds Scraper

parseforge/kijiji-scraper

E-commerceReal estateLead generation

Scrapes Kijiji Canada classified listings by search term and optional location. Returns each listing as a flat row with title, price, location, and full details.

Run this scraper See the API call
Total users
3
Monthly active
0
Total runs
128
Bookmarked
0
Rating
Not rated yet
Last modified
12 days ago

Overview

ParseForge

Kijiji Classifieds Scraper

Scrape Kijiji classified listings by keyword and location, up to a million per run. Every listing returns its title, price, location, and full details. No login or API key. Export to CSV, JSON, Excel, or XML.

Kijiji is Canada's largest classifieds marketplace, but manually copying listings from multiple cities or categories is slow and error-prone. This Actor searches Kijiji by any keyword and location, reads the public listing feed, and returns every match in a clean, flat schema. It works for items for sale, jobs, housing, services, cars, and more.

Who uses it What they scrape Kijiji for
Market researchers Track supply, demand, and pricing trends for specific product categories across Canadian regions.
Deal hunters and resellers Monitor newly listed items below market value in their local area.
Real estate investors Collect rental and for-sale property listings to analyze market rates by neighborhood.
Recruiters and job seekers Aggregate job postings from multiple cities into one searchable dataset.

What it does

This Actor collects Kijiji classified listings by search term and optional city or province, and returns each listing as a flat row.

  • ๐Ÿ”Ž Keyword search: enter any search term like 'laptop', 'sofa', or 'apartment' to find matching listings.
  • ๐Ÿ“ Location filter: narrow results to a specific city, province, or search nationwide with 'Canada'.
  • ๐Ÿ“Š Scalable collection: set a maximum from 1 to 1,000,000 listings per run to match your project size.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with Kijiji data

๐Ÿ“ˆ Monitor resale pricing trends.

A pricing analyst searches for 'iPhone' across Ontario weekly, collects the latest listings, and tracks average asking prices to advise a refurbished-electronics retailer on inventory pricing.

๐Ÿ  Find rental properties before they hit other platforms.

A property manager searches 'condo for rent' in Toronto daily, exports new listings, and contacts landlords within hours of posting to secure units for clients.

๐Ÿš— Source used cars for a dealership.

A used-car buyer searches 'Honda Civic' across British Columbia, collects private-seller listings, and filters by price and mileage to find trade-in candidates.

๐Ÿ’ผ Aggregate job postings across Canada.

A recruitment agency searches 'registered nurse' in multiple provinces, combines the datasets, and builds a lead list of healthcare employers actively hiring.

Why choose this scraper

What you get
No API registration Reads the public Kijiji feed directly with no app setup, OAuth, or rate-limit headaches.
Fixed output schema Every listing lands in the same columns so you can append runs and compare across searches.
Nationwide or local Search all of Canada or zoom into one province or city with the location parameter.

How it compares

Three other Kijiji scrapers exist on Apify. Here is how this Actor compares on the capabilities their listings describe.

Feature ParseForge Kijiji Scraper Kijiji.ca Scraper Kijiji [Only $0.95] Search
Keyword search Yes Yes Yes Yes
Location filter by city or province Yes Not listed Not listed Not listed
Full listing description Yes Not listed Yes Yes
Seller contact information Yes Not listed Not listed Yes
Location coordinates Not listed Not listed Not listed Yes
Up to 1,000,000 listings per run Yes Not listed Not listed Not listed

Configure the run

Drive the Actor with a search keyword and an optional location, and filters run as each listing is read so only matches reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

{
  "query": "laptop",
  "location": "Canada",
  "maxItems": 10
}

A larger pull:

{
  "query": "laptop",
  "location": "Canada",
  "maxItems": 200
}

Pricing

Pay-per-result: $0.021 per result collected. You pay only for the results written to your dataset.

Results collected Approximate cost
100 results $2.10
1,000 results $21.00
10,000 results $210.00

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the Kijiji Classifieds Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to Kijiji through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/kijiji-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check your spelling in the query field. Try a broader search term or remove the location filter to search all of Canada. Some very specific queries may have no active listings at the moment.

Why are my results different from what I see on the Kijiji website?

Kijiji listings change constantly as sellers post, edit, and remove ads. A run captures a snapshot at that moment. Run the Actor again to get the latest listings.

The Actor stopped before reaching my maxItems limit.

The Actor stops when it has collected all available listings matching your query. If fewer listings exist than your maxItems setting, the run ends early with whatever was found.

Can I scrape listings from a specific Kijiji URL?

This Actor is driven by keyword and location, not by direct URL. Use the query and location fields to replicate the search that produces the listings you want.

Why are some listing fields empty in my dataset?

Sellers on Kijiji are not required to fill every field. If a seller leaves the description blank or does not set a price, those columns will be empty for that listing.

FAQ

Question Answer
Can I scrape listings from multiple cities in one run? One run searches one location at a time. To cover multiple cities, run the Actor once per city and merge the datasets. You can schedule concurrent runs for different locations.
Does this Actor scrape the full listing description? Yes. Each result includes the full body text of the listing as it appears on Kijiji, along with title, price, location, and other available fields.
Can I filter by category, like cars or real estate? The Actor searches across all categories by keyword. To target a specific category, include category-specific terms in your query, such as 'Honda Civic' for cars or '2 bedroom condo' for real estate.
Is this Actor legal to use? This Actor reads publicly available listing data from Kijiji. You are responsible for complying with Kijiji's terms of service and Canadian privacy laws in how you use the data.
How do I get seller contact information? The Actor returns whatever contact details are publicly visible on the listing page. If a seller hides their phone number or email, that information will not appear in the dataset.
Can I scrape sold or expired listings? No. The Actor reads the active public listing feed. Once a listing is removed or marked as sold by the seller, it disappears from search results and cannot be collected.
Does this work for Kijiji in French, like in Quebec? Yes. Kijiji serves both English and French Canada. Search in French with terms like 'appartement ร  louer Montrรฉal' and set the location to a Quebec city to get French-language listings.
What export formats are supported? You can export your dataset in CSV, JSON, Excel, or XML from the Apify platform after the run completes.
How often can I run this Actor? You can run it on demand or schedule it to run at regular intervals, such as every hour or every day, to monitor new listings as they appear.
Do I need a Kijiji account or login? No. The Actor reads the public listing pages that anyone can view in a browser. No account, login, or API key is required.

Related actors

  • realtor-ca-scraper: Use this instead when you need residential real estate listings from Realtor.ca with MLS data, property history, and agent details.

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Kijiji Canada Ltd. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

Input

FieldTypeWhat it doesDefault
query required string Keyword to search for (e.g. 'laptop', 'iphone', 'sofa', 'bicycle') laptop
location string Location to search in. Use 'Canada' for nationwide, or a province/city name (e.g. 'Ontario', 'Toronto', 'British Columbia') Canada
maxItems integer How many listings to collect per run. 10

Pricing

from $19.00 per 1,000 results

Charged forWhat it isPrice each
result Single result in the default dataset. $0.019 to $0.021

Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.

API

One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.

POST ยท run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~kijiji-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "helloWorld": 123
  }'

Examples

Input that runs as-is.

input.json
{
  "helloWorld": 123
}

Reviews

No reviews yet. Be the first.

Issues

We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.

Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.

Related scrapers

Run Kijiji Classifieds Scraper on Apify All scrapers