Pagesjaunes Scraper Ppe
Pricing
from $0.90 / 1,000 results
Pagesjaunes Scraper Ppe
PagesJaunes scraper PPE - Pay per event pricing! Extract 130+ business fields from PagesJaunes.fr yellow pages: emails, phones, SIRET, addresses, reviews, ratings. Perfect for lead generation in France. Residential proxy included. No upfront costs, only pay for successful results.
Pricing
from $0.90 / 1,000 results
Rating
0.0
(0)
Developer

SilentFlow
Actor stats
1
Bookmarked
6
Total users
2
Monthly active users
a day ago
Last modified
Categories
Share
📇 PagesJaunes Scraper
by SilentFlow
Extract comprehensive business data from PagesJaunes.fr - France's leading yellow pages directory. Get phone numbers, addresses, SIRET, ratings, reviews, opening hours, and 100+ detailed fields for any business in France.
🇬🇧 English | 🇫🇷 Français
✨ Why use this scraper?
- 🚀 Fast parallel extraction: Scrape 100 businesses in under 2 minutes with concurrent detail page fetching
- 📊 100+ data fields: Business name, phone, address, SIRET/SIREN, NAF code, ratings, reviews, opening hours, services, payment methods, social media, and more
- ⭐ Multi-source ratings: Aggregated ratings from Google, TheFork, TripAdvisor, and PagesJaunes reviews
- 🔄 Automatic pagination: Follows all search result pages until your item limit is reached
- 📄 Detail page enrichment: Visits each listing's detail page to extract full data (legal info, services, certifications, partner reviews)
🎯 Use cases
| Industry | Application |
|---|---|
| Sales & Marketing | Build targeted lead lists with verified phone numbers and addresses for French businesses |
| Market Research | Analyze business density, ratings, and pricing across French cities and sectors |
| Real Estate | Map local businesses around properties to evaluate neighborhood commercial activity |
| Competitive Intelligence | Track competitor ratings, reviews, services, and pricing on PagesJaunes |
| Data Enrichment | Enrich your CRM with SIRET, NAF codes, employee counts, and legal information |
| Local SEO | Audit PagesJaunes listings for directory optimization |
📥 Input parameters
URL scraping
| Parameter | Type | Description |
|---|---|---|
startUrls | array | URLs to scrape, search result pages or individual listing pages |
maxItems | integer | Maximum number of listings to scrape (default: 1000, max: 10000) |
includeDetails | boolean | Visit each listing's detail page for full data (default: true) |
Performance
| Parameter | Type | Description |
|---|---|---|
maxConcurrency | integer | Maximum parallel page requests (default: 10, max: 20) |
maxRequestRetries | integer | Retry failed requests up to N times (default: 5) |
requestTimeoutSecs | integer | Page load timeout in seconds (default: 60) |
Proxy
| Parameter | Type | Description |
|---|---|---|
proxyUrl | string | Custom proxy URL (format: http://user:pass@host:port). If not provided, Apify residential proxy is used |
📊 Output data
Listing example
{"code_etablissement": "07690364","denomination": "Le Moghol","telephone": "0140069036","telephoneFormatted": "01 40 06 90 36","site_web": "http://www.lemoghol.fr","adresse_full_long": "26 rue Caumartin 75009 Paris","adresse": "26 rue Caumartin","codePostal": "75009","ville": "Paris","siret": "43273119800029","siren": "432731198","naf": "5610A","activite_libelle": "restaurants","basicInfo_place_rating": 4.3,"basicInfo_place_nb_review": 3,"ratingBreakdown": {"thefork": 4.3,"tripadvisor": 4.0},"horaires": {"monday": { "open": "11:45", "close": "23:30", "breakStart": "15:00", "breakEnd": "18:30" },"tuesday": { "open": "11:45", "close": "23:30", "breakStart": "15:00", "breakEnd": "18:30" }},"prestations": ["restaurant halal", "repas de groupe", "fait maison"],"categories": ["Restaurants"],"tags": ["restaurant indien"],"paymentMethods": ["CB", "Mastercard", "Visa"],"socialMedia": {"facebook": "https://www.facebook.com/pages/Moghol/237482409698799"},"reseauxSociaux": {"facebook": "https://www.facebook.com/pages/Moghol/237482409698799","thefork": "https://thefork.fr/restaurant/moghol-r7423/avis","tripadvisor": "https://www.tripadvisor.com/Restaurant_Review-g187147-d2010618"},"prix": "21-30 €","prixRange": "21-30 euros","formeJuridique": "5499","dateCreation": "6 juillet 2000","employeeCount": "10 à 19 salariés","typeEtablissement": "Siège","url": "https://www.pagesjaunes.fr/pros/07690364","scrapedAt": "2026-02-28T20:19:13Z"}
🗂️ Data fields
| Category | Fields |
|---|---|
| Identity | code_etablissement, listingId, denomination, tradeName |
| Contact | telephone, telephoneFormatted, telephoneMobile, fax, email, emails |
| Web | site_web, socialMedia (Facebook, Instagram, Twitter, LinkedIn, YouTube), reseauxSociaux (+ TheFork, TripAdvisor) |
| Address | adresse_full_long, adresse, codePostal, ville, departement, region, pays, latitude, longitude |
| Legal | siret, siren, naf, nafLabel, formeJuridique, dateCreation, capital, statutJuridique |
| Ratings | basicInfo_place_rating, basicInfo_place_nb_review, ratingBreakdown (Google, TheFork, TripAdvisor), reviews |
| Hours | horaires (open/close/break per day), horairesOuverture, joursFermeture |
| Services | prestations, services, categories, tags, activite_libelle |
| Pricing | prix, prixRange, prixMin, prixMax, prixMoyen, devise |
| Business | typeEtablissement, employeeCount, employeeRange, paymentMethods |
| Media | photos, logo, description |
| Labels | certifications, labels, badges, isVerified, isPremium |
🚀 Examples
Scrape restaurants in Paris
{"startUrls": [{ "url": "https://www.pagesjaunes.fr/annuaire/paris-75/restaurants" }],"maxItems": 100}
Scrape plumbers in Lyon
{"startUrls": [{ "url": "https://www.pagesjaunes.fr/annuaire/lyon-69/plombiers" }],"maxItems": 200}
Scrape a single listing
{"startUrls": [{ "url": "https://www.pagesjaunes.fr/pros/07690364" }],"maxItems": 1}
Multiple cities at once
{"startUrls": [{ "url": "https://www.pagesjaunes.fr/annuaire/paris-75/avocats" },{ "url": "https://www.pagesjaunes.fr/annuaire/lyon-69/avocats" },{ "url": "https://www.pagesjaunes.fr/annuaire/marseille-13/avocats" }],"maxItems": 500}
💻 Integrations
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("silentflow/pagesjaunes-scraper").call(run_input={"startUrls": [{"url": "https://www.pagesjaunes.fr/annuaire/paris-75/restaurants"}],"maxItems": 50,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(f"{item['denomination']} - {item.get('telephone', 'N/A')}")
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('silentflow/pagesjaunes-scraper').call({startUrls: [{ url: 'https://www.pagesjaunes.fr/annuaire/paris-75/restaurants' }],maxItems: 50,});const { items } = await client.dataset(run.defaultDatasetId).listItems();items.forEach(item => {console.log(`${item.denomination} - ${item.telephone || 'N/A'}`);});
📈 Performance & limits
| Metric | Value |
|---|---|
| Speed | ~100 listings in 1-2 minutes |
| Max items per run | 10,000 |
| Concurrency | Up to 20 parallel requests |
| Detail enrichment | Automatic (can be disabled) |
| Data freshness | Real-time from PagesJaunes.fr |
💡 Tips for best results
- Start with a small test: Run with
maxItems: 10first to verify the data matches your needs - Use search result URLs: Copy URLs directly from PagesJaunes.fr after applying your location and activity filters
- Combine multiple cities: Add several start URLs to scrape the same activity across different cities in one run
- Disable detail pages for speed: Set
includeDetails: falseto get basic listing data much faster (no phone, hours, or legal info) - Use residential proxies: French residential proxies give the best results on Apify
❓ FAQ
Q: What types of URLs can I use?
A: Search result pages (/annuaire/city/activity) and individual listing pages (/pros/ID). Both are supported.
Q: Can I scrape all businesses in a city?
A: Yes, just use the city search URL (e.g., /annuaire/paris-75/) and set a high maxItems. The scraper will navigate through all pages automatically.
Q: What happens if a request fails? A: The scraper automatically retries failed requests. If all attempts fail, the listing is skipped and the scraper continues with the next one.
Q: Can I get email addresses? A: Email addresses are only available when the business has published them on their PagesJaunes listing. Most businesses only display phone numbers.
Q: What is the ratingBreakdown field?
A: It contains individual ratings from partner platforms (Google, TheFork, TripAdvisor) when available, in addition to the main PagesJaunes rating.
Q: How do I scrape without detail page enrichment?
A: Set includeDetails: false in the input. You'll get basic data (name, address, phone, rating) from the search page only, which is much faster.
📬 Support
Need help? We're here for you:
- Feature requests: Let us know what you need
- Custom solutions: Contact us for enterprise integrations or high-volume needs
Check out our other scrapers: SilentFlow on Apify
PagesJaunes Scraper Francais
par SilentFlow
Extrayez des données complètes d'entreprises depuis PagesJaunes.fr - l'annuaire de référence en France. Obtenez numéros de téléphone, adresses, SIRET, notes, avis, horaires d'ouverture et plus de 100 champs détaillés pour toute entreprise en France.
🇬🇧 English | 🇫🇷 Français
✨ Pourquoi utiliser ce scraper ?
- 🚀 Extraction parallèle rapide: Scrapez 100 entreprises en moins de 2 minutes grâce à la récupération simultanée des pages détaillées
- 📊 Plus de 100 champs: Nom, téléphone, adresse, SIRET/SIREN, code NAF, notes, avis, horaires, services, moyens de paiement, réseaux sociaux, et plus
- ⭐ Notes multi-sources: Notes agrégées depuis Google, TheFork, TripAdvisor et les avis PagesJaunes
- 🔄 Pagination automatique: Parcourt toutes les pages de résultats jusqu'à atteindre votre limite
- 📄 Enrichissement par page détaillée: Visite chaque fiche pour extraire les données complètes (infos légales, services, certifications, avis partenaires)
🎯 Cas d'usage
| Secteur | Application |
|---|---|
| Vente & Marketing | Créez des listes de prospection ciblées avec des numéros de téléphone et adresses vérifiés |
| Études de marché | Analysez la densité commerciale, les notes et les prix par ville et secteur d'activité |
| Immobilier | Cartographiez les commerces autour d'un bien pour évaluer l'activité commerciale du quartier |
| Veille concurrentielle | Suivez les notes, avis, services et tarifs de vos concurrents sur PagesJaunes |
| Enrichissement de données | Enrichissez votre CRM avec les SIRET, codes NAF, effectifs et informations légales |
| SEO local | Auditez les fiches PagesJaunes pour optimiser votre présence dans l'annuaire |
📥 Paramètres d'entrée
URLs à scraper
| Paramètre | Type | Description |
|---|---|---|
startUrls | tableau | URLs à scraper, pages de résultats de recherche ou fiches individuelles |
maxItems | entier | Nombre maximum de fiches à scraper (défaut : 1000, max : 10000) |
includeDetails | booléen | Visiter chaque page détaillée pour les données complètes (défaut : true) |
Performance
| Paramètre | Type | Description |
|---|---|---|
maxConcurrency | entier | Nombre maximum de requêtes parallèles (défaut : 10, max : 20) |
maxRequestRetries | entier | Nombre de tentatives en cas d'échec (défaut : 5) |
requestTimeoutSecs | entier | Délai d'attente max par page en secondes (défaut : 60) |
Proxy
| Paramètre | Type | Description |
|---|---|---|
proxyUrl | chaîne | URL de proxy personnalisé (format : http://user:pass@host:port). Si non fourni, le proxy résidentiel Apify est utilisé |
📊 Données extraites
Exemple de fiche
{"code_etablissement": "07690364","denomination": "Le Moghol","telephone": "0140069036","telephoneFormatted": "01 40 06 90 36","site_web": "http://www.lemoghol.fr","adresse_full_long": "26 rue Caumartin 75009 Paris","adresse": "26 rue Caumartin","codePostal": "75009","ville": "Paris","siret": "43273119800029","siren": "432731198","naf": "5610A","activite_libelle": "restaurants","basicInfo_place_rating": 4.3,"basicInfo_place_nb_review": 3,"ratingBreakdown": {"thefork": 4.3,"tripadvisor": 4.0},"horaires": {"monday": { "open": "11:45", "close": "23:30", "breakStart": "15:00", "breakEnd": "18:30" },"tuesday": { "open": "11:45", "close": "23:30", "breakStart": "15:00", "breakEnd": "18:30" }},"prestations": ["restaurant halal", "repas de groupe", "fait maison"],"categories": ["Restaurants"],"tags": ["restaurant indien"],"paymentMethods": ["CB", "Mastercard", "Visa"],"socialMedia": {"facebook": "https://www.facebook.com/pages/Moghol/237482409698799"},"reseauxSociaux": {"facebook": "https://www.facebook.com/pages/Moghol/237482409698799","thefork": "https://thefork.fr/restaurant/moghol-r7423/avis","tripadvisor": "https://www.tripadvisor.com/Restaurant_Review-g187147-d2010618"},"prix": "21-30 €","prixRange": "21-30 euros","formeJuridique": "5499","dateCreation": "6 juillet 2000","employeeCount": "10 à 19 salariés","typeEtablissement": "Siège","url": "https://www.pagesjaunes.fr/pros/07690364","scrapedAt": "2026-02-28T20:19:13Z"}
🗂️ Champs de données
| Catégorie | Champs |
|---|---|
| Identité | code_etablissement, listingId, denomination, tradeName |
| Contact | telephone, telephoneFormatted, telephoneMobile, fax, email, emails |
| Web | site_web, socialMedia (Facebook, Instagram, Twitter, LinkedIn, YouTube), reseauxSociaux (+ TheFork, TripAdvisor) |
| Adresse | adresse_full_long, adresse, codePostal, ville, departement, region, pays, latitude, longitude |
| Légal | siret, siren, naf, nafLabel, formeJuridique, dateCreation, capital, statutJuridique |
| Notes | basicInfo_place_rating, basicInfo_place_nb_review, ratingBreakdown (Google, TheFork, TripAdvisor), reviews |
| Horaires | horaires (ouverture/fermeture/pause par jour), horairesOuverture, joursFermeture |
| Services | prestations, services, categories, tags, activite_libelle |
| Tarifs | prix, prixRange, prixMin, prixMax, prixMoyen, devise |
| Entreprise | typeEtablissement, employeeCount, employeeRange, paymentMethods |
| Médias | photos, logo, description |
| Labels | certifications, labels, badges, isVerified, isPremium |
🚀 Exemples
Scraper les restaurants à Paris
{"startUrls": [{ "url": "https://www.pagesjaunes.fr/annuaire/paris-75/restaurants" }],"maxItems": 100}
Scraper les plombiers à Lyon
{"startUrls": [{ "url": "https://www.pagesjaunes.fr/annuaire/lyon-69/plombiers" }],"maxItems": 200}
Scraper une fiche individuelle
{"startUrls": [{ "url": "https://www.pagesjaunes.fr/pros/07690364" }],"maxItems": 1}
Plusieurs villes en une seule exécution
{"startUrls": [{ "url": "https://www.pagesjaunes.fr/annuaire/paris-75/avocats" },{ "url": "https://www.pagesjaunes.fr/annuaire/lyon-69/avocats" },{ "url": "https://www.pagesjaunes.fr/annuaire/marseille-13/avocats" }],"maxItems": 500}
💻 Intégrations
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("silentflow/pagesjaunes-scraper").call(run_input={"startUrls": [{"url": "https://www.pagesjaunes.fr/annuaire/paris-75/restaurants"}],"maxItems": 50,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(f"{item['denomination']} - {item.get('telephone', 'N/A')}")
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('silentflow/pagesjaunes-scraper').call({startUrls: [{ url: 'https://www.pagesjaunes.fr/annuaire/paris-75/restaurants' }],maxItems: 50,});const { items } = await client.dataset(run.defaultDatasetId).listItems();items.forEach(item => {console.log(`${item.denomination} - ${item.telephone || 'N/A'}`);});
📈 Performance et limites
| Métrique | Valeur |
|---|---|
| Vitesse | ~100 fiches en 1-2 minutes |
| Max fiches par exécution | 10 000 |
| Concurrence | Jusqu'à 20 requêtes parallèles |
| Enrichissement détaillé | Automatique (désactivable) |
| Fraîcheur des données | Temps réel depuis PagesJaunes.fr |
💡 Conseils pour de meilleurs résultats
- Commencez par un petit test: Lancez avec
maxItems: 10pour vérifier que les données correspondent à vos besoins - Utilisez les URLs de recherche: Copiez les URLs directement depuis PagesJaunes.fr après avoir appliqué vos filtres de localisation et d'activité
- Combinez plusieurs villes: Ajoutez plusieurs URLs de départ pour scraper la même activité dans différentes villes en une seule exécution
- Désactivez les pages détaillées pour la vitesse: Mettez
includeDetails: falsepour obtenir les données de base beaucoup plus rapidement (sans téléphone, horaires ni infos légales) - Utilisez des proxies résidentiels: Les proxies résidentiels français donnent les meilleurs résultats sur Apify
❓ FAQ
Q : Quels types d'URLs puis-je utiliser ?
R : Les pages de résultats de recherche (/annuaire/ville/activite) et les fiches individuelles (/pros/ID). Les deux sont supportés.
Q : Puis-je scraper toutes les entreprises d'une ville ?
R : Oui, utilisez simplement l'URL de recherche de la ville (ex : /annuaire/paris-75/) et définissez un maxItems élevé. Le scraper parcourt automatiquement toutes les pages.
Q : Que se passe-t-il si une requête échoue ? R : Le scraper retente automatiquement les requêtes échouées. Si toutes les tentatives échouent, la fiche est ignorée et le scraper continue avec la suivante.
Q : Puis-je obtenir les adresses email ? R : Les emails ne sont disponibles que lorsque l'entreprise les a publiés sur sa fiche PagesJaunes. La plupart des entreprises n'affichent que le numéro de téléphone.
Q : Qu'est-ce que le champ ratingBreakdown ?
R : Il contient les notes individuelles des plateformes partenaires (Google, TheFork, TripAdvisor) quand elles sont disponibles, en plus de la note PagesJaunes principale.
Q : Comment scraper sans enrichissement par page détaillée ?
R : Mettez includeDetails: false dans l'input. Vous obtiendrez les données de base (nom, adresse, téléphone, note) de la page de recherche uniquement, ce qui est beaucoup plus rapide.
📬 Support
Besoin d'aide ? Nous sommes là pour vous :
- Demandes de fonctionnalités : Faites-nous savoir ce dont vous avez besoin
- Solutions personnalisées : Contactez-nous pour des intégrations entreprise ou des besoins en volume
Découvrez nos autres scrapers : SilentFlow sur Apify