CustoJusto.pt Scraper — Portugal Classified Ads & Prices avatar

CustoJusto.pt Scraper — Portugal Classified Ads & Prices

Pricing

from $3.50 / 1,000 results

Go to Apify Store
CustoJusto.pt Scraper — Portugal Classified Ads & Prices

CustoJusto.pt Scraper — Portugal Classified Ads & Prices

Scrape CustoJusto.pt, Portugal's largest classifieds site, in bulk: title, description, price in EUR, district, county and parish, seller name, business-seller flag, photo count and post date as sortable columns. Category browse or keyword search. Keyless. JSON, CSV or Excel.

Pricing

from $3.50 / 1,000 results

Rating

0.0

(0)

Developer

Logiover

Logiover

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Scrape CustoJusto.pt, Portugal's largest online marketplace, in bulk — no login, no API key, no browser. Point the Actor at any category or result page and it walks the pages, parses every card into flat, sortable columns, and saves rows as it goes.

22 columns per row · thousands of rows per run · numeric prices, not strings · JSON, CSV, Excel or API · pay only for the rows you keep.


Why this CustoJusto.pt scraper

CustoJusto.pt publishes everything a buyer needs on the result page — but as prose, inside a card, behind pagination. Reading it at any useful scale by hand is not realistic, and copy-paste gives you text where you need numbers.

This Actor turns those pages into a table. price is a number, not "1.149,90 €". Location, seller and category are their own columns instead of one blob. That is the difference between data you can pivot on and data you have to clean first.

It is built on the same engine as the rest of this fleet, which means three things you only notice when they are missing:

  • It respects the clock. Every run carries a time budget and saves rows continuously, so a slow page never costs you the whole run.
  • One bad page does not end the crawl. An unreachable page is retried, then skipped and logged — not treated as the end of the listing.
  • It says what it did. Row counts, skipped pages and stop reasons all appear in the log, so a short run is always explainable.

What you get

Local lead generation in Portugal

isBusinessSeller, sellerId and sellerName let you separate professional advertisers from private sellers and group every ad by the same seller — the two things a raw ad dump never gives you.

Regional price and supply analysis

District, county and parish arrive as three separate columns, so you can compare Lisboa against Porto, or drill to a single freguesia, with a pivot table and no geocoding.

Marketplace and inventory research

publishedAt is a real ISO timestamp, so you can measure how fast a category turns over and when sellers post.

Dealer and competitor monitoring

Filter on isBusinessSeller to watch just the professional advertisers in your category, and track their price moves over time.


Input

FieldTypeWhat it does
startUrlstringAny CustoJusto.pt category or result URL. The Actor paginates from here.
searchQuerystringOptional keyword. When set, the site is searched for it and the category URL is ignored.
maxResultsintegerStop after this many rows (default 200).
proxyConfigurationobjectApify Proxy settings. The default is fine.

Example input

{
"startUrl": "https://www.custojusto.pt/portugal/informatica",
"searchQuery": "",
"maxResults": 200,
"proxyConfiguration": { "useApifyProxy": true }
}

Output

One row per listing, 22 columns:

ColumnTypeDescription
listingIdstringCustoJusto listing id.
titlestringListing headline.
listingUrlstringCanonical link to the ad.
pricenumberAsking price. Null when the ad carries no figure — that is "price on request", not zero.
currencystringAlways EUR.
listingTypestringsell, buy, rent, and so on.
descriptionstringAd body text as shown on the results page.
categorystringCategory name.
categoryIdstringNumeric CustoJusto category id.
districtstringPortuguese district (distrito).
countystringMunicipality (concelho).
parishstringCivil parish (freguesia).
sellerNamestringDisplay name of the advertiser.
sellerIdstringStable advertiser id — lets you group every ad by one seller.
isBusinessSellerbooleanTrue for professional advertisers.
imageCountnumberHow many photos the ad carries.
imageUrlstringFirst photo.
hasVideobooleanTrue when the ad includes a video.
publishedAtstringISO timestamp the ad went live.
countrystringAlways Portugal.
sourcestringAlways custojusto_pt.
scrapedAtstringISO timestamp of collection.

Example row

{
"listingId": "…",
"title": "…",
"listingUrl": "…",
"price": 0,
"currency": "…",
"listingType": "…",
"description": "…",
"category": "…",
"categoryId": "…",
"district": "…",
"county": "…",
"parish": "…",
"sellerName": "…",
"sellerId": "…",
"isBusinessSeller": false,
"imageCount": 0,
"imageUrl": "…",
"hasVideo": false,
"publishedAt": "…",
"country": "…",
"source": "…",
"scrapedAt": "…"
}

Export from the Apify Console as JSON, CSV, Excel, XML or RSS, or pull it straight from the Dataset API.


How to use it

  1. Open the Actor and paste a CustoJusto.pt category URL into Category or listing URL.
  2. Set Maximum results to how many rows you want.
  3. Click Start. Rows appear in the dataset while the run is still going.
  4. Export, or schedule the run daily and diff the results to track price moves.

You can also run it from the Apify API, the JavaScript client or the Python client, and wire the output into Google Sheets, Zapier, Make or your own warehouse.


Frequently asked questions

Do I need an account or API key?

No login and no key — only an Apify account.

What does a null price mean?

The advertiser did not publish a figure. That is "price on request", not zero, so the column is left empty rather than being flattened to 0.

Can I get only professional sellers?

Yes. Filter the output on isBusinessSeller = true.

How precise is the location?

Three levels: district (distrito), county (concelho) and parish (freguesia), each as its own column.

Can I scrape a keyword search?

Yes. Fill in Search keyword; the category URL is then ignored.

How much does it cost?

You pay per row kept, plus Apify platform usage. A 1,000-row run is inexpensive; run it on a schedule and you have a continuous price feed for the cost of a coffee.

Is scraping CustoJusto.pt legal?

This Actor reads only publicly available pages — the same ones anyone can open in a browser — and collects no personal data beyond the seller display name that CustoJusto.pt itself publishes next to each listing. You are responsible for how you use the output, including compliance with CustoJusto.pt's terms and with data-protection law such as the GDPR. If in doubt, take legal advice.


Browse the rest of the fleet for country marketplace, classifieds, property and company-registry scrapers covering more than eighty countries.


Support

Found a broken column or a site change? Open an issue on the Actor's Issues tab and it will be looked at. This Actor is actively maintained — see the Changelog for its history.


CustoJusto.pt is a trademark of its respective owner. This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by CustoJusto.pt.