Eniro.se Scraper
Pricing
from $5.00 / 1,000 listings
Eniro.se Scraper
Scrape eniro.se (Sweden Yellow Pages) into structured business rows: name, phone, email when listed, website, address, hours, rating, org number. Keyword plus city, nationwide Sweden, or an Eniro search or /firma profile URL. HTTP only, no Unblocker. JSON or CSV out. $5 per 1,000 listings.
Pricing
from $5.00 / 1,000 listings
Rating
0.0
(0)
Developer
Muhamed Didovic
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
20 hours ago
Last modified
Categories
Share
Turn an Eniro search into structured Swedish business rows: name, phone, email when listed, website, address, hours, rating, org number, and profile link.
Keyword + city, nationwide Sweden, or an eniro.se URL. JSON or CSV out.
This is eniro.se (Sweden). It is not Hitta.se, Gule Sider, or Krak.
Why Use This Scraper?
- Phone and address on the search card
- Profile pass for email, hours, coordinates, rating, and org number
{what}+{where}/företagsearches and/firmaprofiles- HTTP via Apify Unblocker. Cloudflare on www.eniro.se blocks bare residential
Overview
Built for sales teams, agencies, and researchers who need Swedish business leads from Eniro.
Every start type becomes one dataset row per listing. A keyword search and a /{slug}/{id}/firma profile emit the same flat shape. Rows are de-duplicated by listing id.
Supported Inputs
Search terms and locations
| Field | Example |
|---|---|
searchTerms | ["restaurang"], ["elektriker", "frisör"] |
locations | ["Stockholm"], ["Göteborg"], ["Malmö"] |
Every term is searched in every location. Leave locations empty for a nationwide category search. Use Swedish spelling (å/ä/ö) when Eniro expects it.
URL types
| URL type | Pattern | Example |
|---|---|---|
| Search | /{what}+{where}/företag | https://www.eniro.se/restaurant+stockholm/företag |
| Search page | /{what}+{where}/företag/N | https://www.eniro.se/restaurant+stockholm/företag/2 |
| Nationwide | /{what}/företag | https://www.eniro.se/restaurang/företag |
| Profile | /{slug}/{id}/firma | https://www.eniro.se/ballbreaker+kungsholmen+ab+stockholm/49704257/firma |
Search URLs paginate automatically.
Unsupported: Hitta.se, Gule Sider, Krak, Eniro person search, account pages.
Use Cases
| Audience | What they take from a run |
|---|---|
| Sales and outreach | Phone + email (when listed) + website by trade and city |
| Agencies | Cross-joined term × city lists in one dataset |
| Local SEO | Category, rating, and the Eniro profile URL |
| Researchers | Hours, org number, and coordinates for a trade in a city |
How It Works
- Cross-join
searchTerms×locations(or nationwide Sweden if no city), plus any eniro.se URLs. - Fetch the public search HTML (JSON-LD ItemList) with got-scraping over Apify Unblocker.
- Page in ~25-row chunks, stopping at
maxItemsormaxPages. - Read name, phone, address, and website from each card.
- Optionally open
/firmafor email, hours, geo, rating, and org number. - De-duplicate by listing id and push one row per business.
Input Configuration
| Field | Type | Required | Notes |
|---|---|---|---|
searchTerms | array | one of the start types | What you would type into Eniro |
locations | array | no | Swedish city. Empty = nationwide |
startUrls | array | one of the start types | Search or /firma URL |
maxItems | integer | no | Default 50. Free users capped at 50. |
scrapeDetails | boolean | no | Default true. Email, hours, geo, org number. |
maxPages | integer | no | Default 20. |
maxConcurrency | integer | no | Default 3. Keep modest; Cloudflare sits on www. |
proxy | object | no | Default is Apify Unblocker. Residential alone still 403s on cloud. |
Example input
{"searchTerms": ["restaurang"],"locations": ["Stockholm"],"maxItems": 50}
Output Overview
One flat row per business. Contact and address fields sit at the top level. searchTerm tells you which input produced the row. Email is present when Eniro publishes one on the profile.
Output Samples
Search: restaurang in Stockholm, with profile enrich.
{"listingId": "49704257","name": "Ballbreaker Kungsholmen AB","phone": "086170000","email": "info@ballbreaker.se","website": "https://www.ballbreaker.se/","orgNumber": "556728-5902","street": "Lindhagensgatan 114","postalCode": "11251","city": "STOCKHOLM","country": "SE","eniroUrl": "https://www.eniro.se/ballbreaker+kungsholmen+ab+stockholm/49704257/firma"}
Key Output Fields
Identity: listingId, slug, name, eniroUrl, orgNumber
Contact: phone, phones, email, website, social
Place: address, street, postalCode, city, country, latitude, longitude
Directory: category, categories, rating, reviewCount, hours, description, images, logo
Provenance: searchTerm, scrapedAt
Pricing
| Event | When | Rate |
|---|---|---|
| Actor start | Once per run, per GB of memory | $0.005 |
| Listing | Each unique business in the dataset | $0.005 ($5 / 1k) |
| Contact phone | Row has a phone | $0.002 |
| Contact email | Row has an email | $0.05 |
Phone and email are billed only when Eniro publishes that field. A miss is free. Phone is common on search cards. Inbox is on the profile.
FAQ
Will every row have an email? No. Phone is on the search card. Inbox is on a smaller share of /firma pages. Phone and email are billed as extra events only when the field is present.
What does scrapeDetails add? The /firma page: email, hours, coordinates, rating, org number, extra website.
Do I need a proxy? Yes — Apify Unblocker. Datacenter and bare residential both get a Cloudflare challenge.
Is there an official Android app? Yes — Eniro (com.eniro) is live on Play. The current app is a WebView of eniro.se, so this actor reads the same public HTML the site serves.
Support
- Issues: Actor Issues
- Author site: https://muhamed-didovic.github.io/
- Email: muhamed.didovic@gmail.com
Additional Services
Bulk city sweeps, scheduled refreshes, or a private API wrapper: muhamed.didovic@gmail.com
Explore More Scrapers
Directory cousins: Yell.com, PanoramaFirm.pl, PaginasAmarillas.es, Herold.at, PagineGialle, local.ch, Gelbe Seiten, Yellow Pages US, Yellow Pages Canada, Canada411, and PagesJaunes.fr. More actors on memo23 and didovic.
🤖 For AI Agents & LLM Apps
Compact reference for AI agents calling this actor via the Apify MCP server or the Apify API (actor: memo23/eniro-scraper).
Purpose: Extract Eniro.se Swedish business listings (name, phone, email when listed, website, org number, split address, hours) by keyword + city or URL.
Minimal input:
{"searchTerms": ["restaurang"],"locations": ["Stockholm"],"maxItems": 10}
Output: one dataset row per business — listingId, slug, name, phone, phones, email, website, orgNumber, social, address, street, postalCode, city, country, latitude, longitude, category, categories, rating, reviewCount, hours, description, images, logo, eniroUrl, searchTerm, scrapedAt.
Behaviors an agent should know:
- Always set
maxItems. Free users are capped at 50. searchTermswithoutlocationsruns a nationwide Sweden category search.startUrlswork on their own (eniro.se only).- Phone is often already on the search card. Keep
scrapeDetailstrue for email and hours. - Each listing is $0.005. A phone on the row is $0.002. An email is $0.05. Start is $0.005 per GB.
- Sweden directory only. Not Hitta, Gule Sider, or Krak.
⚠️ Disclaimer
This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Eniro AB or eniro.se. All trademarks mentioned are the property of their respective owners.
The scraper reads publicly listed Swedish business data from eniro.se. Users are responsible for ensuring their use complies with Eniro Terms of Service, applicable data-protection law (GDPR), and any contractual obligations of their own organization.
SEO Keywords
eniro scraper, eniro.se scraper, scrape eniro.se, Swedish business directory scraper, Swedish yellow pages scraper, gulasidorna scraper, Stockholm leads scraper, Apify eniro, Swedish restaurant leads, Göteborg business scraper, elektriker leads Sweden, Eniro directory scraper