PagineGialle Scraper $1.5/1K💰 | Italy B2B Leads | Reviews avatar

PagineGialle Scraper $1.5/1K💰 | Italy B2B Leads | Reviews

Pricing

from $1.50 / 1,000 business scrapeds

Go to Apify Store
PagineGialle Scraper $1.5/1K💰 | Italy B2B Leads | Reviews

PagineGialle Scraper $1.5/1K💰 | Italy B2B Leads | Reviews

Collect Italian business leads from PagineGialle.it — Italy's Yellow Pages. Get phones, emails, websites, addresses, opening hours and customer reviews for B2B prospecting, CRM enrichment, local SEO and Italian market research.

Pricing

from $1.50 / 1,000 business scrapeds

Rating

0.0

(0)

Developer

Ahmed Jasarevic

Ahmed Jasarevic

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Categories

Share

PagineGialle Scraper — Italian Business Leads & Reviews

Collect Italian business leads from PagineGialle.it (Italy's Yellow Pages) — business name, category, address, phone numbers, email, website, opening hours, GPS, and customer reviews — without a proxy and without an official API key. Built for B2B lead generation, CRM enrichment, local SEO, and Italian market research.

Main Use Cases

  • B2B lead generation in Italy — build prospect lists for any business sector and city
  • CRM enrichment — append phones, emails, websites, hours, and geo to existing records
  • Local SEO research — audit business listings and competitor presence across Italian regions
  • Reviews & reputation monitoring — pull customer reviews (with business replies) per listing
  • Sales prospecting — keyword-category search across cities, provinces, and regions
  • Market mapping — map the competitive landscape of any Italian industry

How It Works

The actor talks to Italiaonline's mobile search API (ws.paginegialle.it/search) — the same backend that powers PagineGialle's mobile app — over plain HTTP. No proxy, no browser, no WAF challenge for listing extraction: each results page returns ~26 businesses with contact details, GPS, category, and full weekly hours directly in the list, so there are no per-listing follow-up requests.

Business records go to the Business Listings dataset. Optionally, customer reviews are fetched from PagineGialle's comments API — plain HTTP first, with a lazy headless-Chrome solve of the AWS WAF challenge only when a review fetch is actually blocked (the WAF token is cached and reused across runs).

The actor writes to two separate datasets:

DatasetContainsRecord type
Business Listings (default)One item per paginegialle.it listingbusiness
Reviews (reviews alias)One item per business review, joined via cdIdSedereview

Both datasets are exposed in the Storage/Output tab of each run and can be exported/downloaded independently.

Build Italian B2B Lead Lists Without an Official PagineGialle API

PagineGialle does not publish a public developer API for third-party data access. This actor reads the same structured backend the PagineGialle mobile app uses, so you get complete business data — including published email, all phone numbers, and full weekly hours — without an API contract, without visiting each listing page, and without configuring proxies.

Collect Italian Business Contacts for CRM Enrichment & Local SEO

Each business record includes primary and secondary phone numbers (with type flags like fisso / cellulare and an isPayNumber marker), published email, website, GPS coordinates, distance from the search point, opening status and weekly hours, feature flags (email/web/video/reservation/ecommerce), and the PagineGialle listing URL. Perfect input for lead scoring, deduplication, and downstream CRM workflows.

Monitor Customer Reviews for Italian Businesses

Enable includeReviews: true to fetch customer reviews per business: rating (1–5) and label, full review text, reviewer name, date, publisher metadata (e.g. Google, Tripadvisor), and business replies. Review records reference their business through cdIdSede — the same join key your own database can use.

Input

FieldTypeRequiredDefaultNotes
modestringNoautosearch (keyword) | direct (listing URLs) | both. Auto: direct when only urls, both when both, else search.
whatstringFor searchBusiness type or keyword, e.g. ristoranti, farmacia, avvocati.
wherestringFor searchRomaCity, province, or region, e.g. Milano, RM, Lazio. Also the fallback scope for URLs without a city hint.
sortBystringNorelevancerelevance | city | name | popularity (search mode).
maxItemsintegerNo100Max listings from keyword search (0 = unlimited). Direct URLs bypass this cap.
urlsarrayFor directPagineGialle listing URLs to resolve as exact businesses — each URL produces one result.
includeReviewsbooleanNofalseFetch reviews for every business (Reviews dataset).
reviewsSortstringNodate_descdate_desc | rating_desc | rating_asc.
maxReviewsPerBusinessintegerNo20Cap on reviews kept per business.

Output

Business Listings dataset fields:

FieldDescription
businessName / category / categoryCodeBusiness identity and PagineGialle category code
address / city / province / postalCode / countryLocation breakdown
phone / phonesPrimary phone / all phones with type (fisso, cellulare, …) and isPayNumber flag
email / websitePublished email and website (where available)
latitude / longitudeGPS coordinates
distance / geolevelDistance and geo precision from the search location
listingUrlURL of the listing on paginegialle.it
descriptionBusiness description (abstract)
openingStatus / closingTime / openingHoursCurrent open/closed state and weekly hours
flagsFeature flags (email, web, video, reservation, ecommerce, …)
cdIdSedePagineGialle location ID — join key to the reviews dataset
scrapedAt / sourceUrlTimestamp and API call the listing came from

Reviews dataset fields (with includeReviews: true): reviewId, cdIdSede, businessName, sourceUrl, reviewSourceUrl, rating (1–5), ratingLabel, text, userName, date, answers (business replies), thumbsUp, publisher, deviceOrigin.

Example Input

Keyword search — restaurants in Rome:

{
"mode": "search",
"what": "ristoranti",
"where": "Roma",
"sortBy": "popularity",
"maxItems": 500
}

Direct listing URLs + reviews:

{
"mode": "direct",
"urls": [
"https://www.paginegialle.it/ristorante-la-favola-rm",
"https://www.paginegialle.it/checchinodal1887"
],
"includeReviews": true,
"maxReviewsPerBusiness": 20
}

Both at once:

{
"mode": "both",
"what": "ristoranti",
"where": "Roma",
"maxItems": 100,
"urls": ["https://www.paginegialle.it/checchinodal1887"]
}

Running the Two Parts Independently

  • Search-only run (mode: "search") → populates Business Listings only.
  • Direct run (mode: "direct", includeReviews: false) → populates Business Listings only.
  • Reviews run (mode: "direct", includeReviews: true) → populates both datasets.

To automate each pipeline independently, save two Apify scheduled tasks: one search-only for lead collection, one direct+reviews for review monitoring. Trigger either via POST /v2/acts/{actorId}/runs with the matching input.

Integrations & Automation

  • Apify API — trigger runs from any stack; run search-only, direct, or reviews-only pipelines separately
  • Scheduling — weekly lead refreshes, daily review monitoring
  • Webhooks & integrations — Zapier, Make, CRM imports (HubSpot, Salesforce) via the Apify platform
  • Export — JSON, CSV, Excel, HTML, XML per dataset

Cost Estimation

Pay-per-event: $0.0015 per business (primary event) + $0.0005 per review + $0.00005 start fee. Listing extraction is plain HTTP and memory-light (~256 MB), so a 100-business run costs about $0.15 plus compute. Enabling reviews raises memory (~1 GB) when headless Chrome is needed and adds the per-review event. Free-tier accounts are capped at 10 items per run.

Notes & Limitations

  • Some listings (non-paying businesses) have no phone/email/website — those fields are null/empty.
  • VAT/tax IDs are not exposed by this API.
  • Listings page at ~26 results per page; max_results in the response reports the estimated total for a query.
  • The listing API is HTTP-only (HTTPS is not served by the host).
  • Reviews come from PagineGialle's comments API behind AWS WAF — solved lazily with headless Chrome only when blocked; the token is cached across runs. Some businesses legitimately have no reviews.

FAQ

Why use this actor instead of the official PagineGialle API?

PagineGialle doesn't expose a public developer API. This actor uses the same mobile-search backend (ws.paginegialle.it/search) the PagineGialle app uses — no WAF challenge, no proxy needed, and complete contact/hours data at the list level without visiting each listing page.

What are alternatives to PagineGialle data for Italy?

For official company records, Registro Imprese (Camera di Commercio) is the authoritative source for VAT/Partita IVA, legal form, and PEC. For local-business data beyond directories, a Google Maps scraper covers businesses, contacts, and reviews.

Is scraping PagineGialle GDPR compliant?

The actor only reads publicly published business listings — business-published contact information. As the user, you are responsible for complying with the GDPR and Italian data-protection law (D.Lgs. 196/2003) when storing or processing personal data, e.g. not using emails or phones for unsolicited commercial outreach without a lawful basis.

How much does PagineGialle scraping cost?

$0.0015 per business + $0.0005 per review + a $0.00005 start fee. Reviews are charged only when you enable includeReviews.

Why is no proxy required?

The actor calls the mobile search API (ws.paginegialle.it, HTTP-only) which is served without the AWS WAF protection that challenges the public website. Reviews sit behind AWS WAF — they are fetched over plain HTTP first, and headless Chrome solves the challenge lazily only when actually blocked.

Do all listings have emails and phones?

No. Non-paying businesses may publish no phone, email, or website — those fields are null/empty. VAT/tax IDs are not exposed by this API. Some businesses legitimately have no reviews.

For AI Agents & LLM Apps

This actor is callable via the Apify MCP server and the Apify REST API.

  • Purpose: returns structured Italian business listings — name, category, address, phones, email, website, hours, GPS — from PagineGialle.it, plus optional customer reviews.
  • Minimal working input:
{ "mode": "search", "what": "ristoranti", "where": "Roma", "maxItems": 20 }
  • Variant modes:
    • Direct-listing enrichment: { "mode": "direct", "urls": ["https://www.paginegialle.it/checchinodal1887"] }
    • Reviews: add "includeReviews": true (writes to the reviews dataset).
  • Output fields (business): type, businessName, category, categoryCode, address, city, province, postalCode, country, phone, phones, email, website, latitude, longitude, distance, geolevel, listingUrl, description, openingStatus, closingTime, openingHours, logo, imageUrl, flags, cdIdSede, userDetail, urldetailMobile, scrapedAt, sourceUrl. Output fields (review): type, reviewId, cdIdSede, businessName, sourceUrl, reviewSourceUrl, rating, ratingLabel, text, userName, date, answers, thumbsUp, publisher, deviceOrigin.
  • Behaviors an agent should know:
    • mode is auto-detected: only urlsdirect; both what/where and urlsboth; otherwise search.
    • what and where are required for search mode; urls is required for direct mode. A run with neither fails.
    • maxItems defaults to 100; maxItems: 0 means unlimited — avoid it unless the caller wants an unbounded (and unboundedly billed) run.
    • includeReviews: true adds per-review charges and writes to the reviews dataset, not the default one.
    • The run that first solves the AWS WAF challenge needs ~1 GB (headless Chrome); listing-only runs stay at ~256 MB.
  • Billing: pay-per-event — $0.0015 per business + $0.0005 per review + $0.00005 run start.

This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Italiaonline S.p.A. or PagineGialle.it.

The actor accesses publicly published business listings through the same mobile search backend PagineGialle's app uses. It does not bypass logins; when review fetches hit an AWS WAF JavaScript challenge, it is solved like a standard browser would solve it and the token is cached per IP. Users are responsible for complying with PagineGialle's Terms of Service, the GDPR, and Italian data-protection law (D.Lgs. 196/2003). Contact data returned by this actor should not be used for unsolicited commercial outreach without a lawful basis.

SEO Keywords

paginegialle scraper, paginegialle api, italian business directory data, italian yellow pages, b2b lead generation italy, italian business leads, italy business contact database, italian company directory, local seo italy, italian business email list, italian business phone numbers, paginegialle alternative, italian business reviews, registro imprese alternative, italian business data, crm enrichment italy, sales prospecting italy, aziende italiane contatti, elenco imprese italia, ristoranti roma, avvocati milano, impresa edile