Net-Empregos Portugal Jobs Scraper: Vagas de Emprego, No Login avatar

Net-Empregos Portugal Jobs Scraper: Vagas de Emprego, No Login

Pricing

$1.50 / 1,000 job offer results

Go to Apify Store
Net-Empregos Portugal Jobs Scraper: Vagas de Emprego, No Login

Net-Empregos Portugal Jobs Scraper: Vagas de Emprego, No Login

Extract Portuguese job listings from net-empregos.com by district, category, or keyword. Get title, company, location, posting date, and optional full offer detail with expiry date, with correct Portuguese diacritics. Plain HTTP, no login, no JavaScript. Pay only per result, flat PPE pricing.

Pricing

$1.50 / 1,000 job offer results

Rating

0.0

(0)

Developer

GetAScraper

GetAScraper

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

5 days ago

Last modified

Share

💼 Net-Empregos Portugal Jobs Scraper: Vagas de Emprego, No Login

Get Portugal's job offers from Net-Empregos as clean, structured rows.
Search about 60,000 active offers by keyword, place, category, and contract type. Get a daily feed of only the new offers, or a market snapshot of how many jobs are open. Export to a spreadsheet, database, or hiring dashboard.

Net-Empregos is one of Portugal's largest job boards. This Actor searches it for Lisboa, Porto, Faro, the Azores, and every other district, and saves each matching offer as one row. Schedule it and it returns only the offers that appeared since the last run. Accents stay intact, so Portuguese job titles read correctly in your output.

Filter by place
Pick several of the 28 districts and regions, or search the whole country. Add remote, part-time, or internship offers.
Filter by sector
Narrow results to any of 44 job categories, exclude words and recruitment agencies, and keep only offers from the last few days.
Full offer details
Add the description, expiry date, and what the ad states about experience, education, languages, remote work, and pay.
New-offers feed
Run it on a schedule and get only offers you have not seen. No login or API key needed.

🔍 What does this Actor do?

  • Searches live offers: every run reads the current Net-Empregos listings, so results match what the site shows today.
  • Saves one row per offer: ID, link, title, company, company logo, district, category, contract type, posting date, and how many days the offer has been online.
  • Returns only new offers: switch on the new-offers option, schedule the run, and each run saves only offers this monitor has not returned before. The first run builds the baseline, so keep the search narrow enough that the first run can cover it.
  • Tracks the market: the market snapshot mode counts open offers per district, category, and contract type, and shows the change since your previous snapshot.
  • Reads facts out of the ad text: with full details on, rows include remote or hybrid work, years of experience, education levels, languages, and the salary when the ad states one.
  • Keeps the data honest: a field the offer does not state is left out, never filled with a placeholder. Most Portuguese ads do not state a salary, so expect that field on only a small share of offers.

🧭 How it works

1. Choose your search
Enter keywords and pick districts, categories, and contract types. Leave any empty to widen the search.
2. Run once or on a schedule
The default saves 20 offers in seconds. For a feed, turn on new offers only and schedule the run.
3. Download or connect
Export CSV, Excel, or JSON from the Output tab, or send each run to Slack, email, Sheets, or a webhook with Apify integrations.

🎯 What can I use it for?

  • Recruiters and staffing agencies: watch which companies are hiring in a district or sector, and exclude competing agencies.
  • Job boards and alert apps: a clean daily feed of new offers by category, with stable IDs and posting dates.
  • Market analysts and HR teams: track open offers per district and category over time, or measure how many roles are remote.
  • Candidates and career coaches: find recent offers that state no experience is needed, or that mention a language you speak.

📥 Input

FieldTypeRequiredDescription
What to collectenumNoJob offers (default) or a market snapshot of open offers per district, category, and contract type.
KeywordstextNoWords the offer must mention, such as a job title or skill. Leave empty to match every offer.
Exclude wordslistNoDrop offers whose title, or description when details are on, contains any of these words.
Districts and regionsmulti-selectNoAny of the 28 places the site lists, including the islands. Each choice is searched separately. Empty means the whole country.
Job categoriesmulti-selectNoAny of 44 professional categories. Empty means all.
Job typesmulti-selectNoFull-time, part-time, internship, or remote work. Empty means all.
Posted within (days)integerNoOnly offers from the last N days. 1 means today. 0 means no limit.
Exclude companieslistNoDrop offers from companies whose name contains any of these words.
Only new offers since the last runtrue or falseNoReturn only offers this monitor has not returned before.
Monitor nametextNoA label for the list of seen offers. Use one name per saved search.
Include full description and detailstrue or falseNoAdds the full description, posting time, expiry date, and the facts read from the text. Slower. Default off.
Maximum resultsintegerNoHow many offers to save. Default 20, maximum 5,000.
Parallel requestsintegerNoHow many pages or offers are read at once. Default 3, maximum 6.
Proxy configurationobjectNoNetwork settings for the requests. The default works for most runs.

📊 Data table

FieldTypeDescription
idtextThe offer number on Net-Empregos. Stable, so it works as a unique key.
urltextDirect link to the offer page.
titletextJob title, with accents kept as written.
companytextEmployer name as listed on the offer.
companyLogoUrltextThe logo the employer uploaded, when there is one.
locationtextTown or district printed on the offer card.
district, districtIdtextThe district or region, matched to the site's own list.
category, categoryIdtextJob category as the site labels it, with its ID.
jobType, jobTypeIdtextFull-time, Part-time, Internship, or Remote work. Present when you filter by job type.
workMode, isRemotetext, true or falseRemote or hybrid, when the title or description says so. Always remote for a remote-only search.
datePosteddateDay the offer was published, YYYY-MM-DD.
daysOnlineintegerDays between the posting date and today.
isFeaturedtrue or falseWhether the employer paid to feature the offer.
postedAtdate and timeExact posting time. With details on.
validThrough, daysUntilExpirydate, integerExpiry date and days left. With details on.
employmentType, industry, region, citytextFrom the offer page. With details on.
experienceYearsMin, experienceYearsMaxintegerYears of experience the ad asks for. 0 when the ad says none is needed. With details on.
educationLevelslistLevels the ad mentions: basic_9, secondary_12, professional, bachelor, master, phd. With details on.
languageslistLanguages the ad names, such as English or French. With details on.
salaryMin, salaryMax, salaryCurrency, salaryPeriod, salaryBasis, salaryTextnumber, textPay when the ad states an amount: range, EUR, hour, month or year, gross or net, and the sentence it came from. With details on.
descriptiontextFull offer text. With details on.
changeType, firstSeenAttext, date and timeNEW and when it was first returned. Only in new-offers mode.
scrapedAtdate and timeWhen this Actor collected the row.

Market snapshot rows have their own fields: snapshotDate, dimension (overall, jobType, district, or category), name, openOffers, and, from the second snapshot on, previousOpenOffers, change, and changePercent.

Fields that an offer does not publish are left out of its row. Education, languages, experience, work mode, and salary are read from free text, so they appear only when the ad says so.

Example row with details on:

{
"id": "16087291",
"url": "https://www.net-empregos.com/16087291/gestor-a-de-condominios-lisboa/",
"title": "Gestor/a de Condomínios - Lisboa",
"company": "O Meu Condomínio",
"district": "Lisboa",
"districtId": "1",
"category": "Administração / Secretariado",
"categoryId": "29",
"datePosted": "2026-10-07",
"daysOnline": 0,
"isFeatured": true,
"validThrough": "2026-11-06",
"daysUntilExpiry": 30,
"employmentType": "FULL_TIME",
"experienceYearsMin": 2,
"educationLevels": ["bachelor"],
"languages": ["English"],
"scrapedAt": "2026-10-07T09:12:44.120Z"
}

💰 Pricing

You pay $1.50 per 1,000 results saved ($0.0015 per result). A run that finds no offers costs nothing. There is no fee to start a run and there are no subscriptions. A market snapshot returns up to 77 rows, so one snapshot costs about $0.12.

⭐ Enjoying Net-Empregos Portugal Jobs Scraper: Vagas de Emprego, No Login?

⭐ ⭐ ⭐ ⭐ ⭐
Saving hours of manual copying each week is worth a quick rating.
A 5-star rating takes 10 seconds and helps other recruiters and analysts find this Actor. Your feedback also shapes the next update.
★  Rate this Actor on Apify

❓ FAQ

Como extraio vagas de emprego do Net-Empregos?

Enter keywords, pick districts and categories if you want, set the number of offers, and start the run. The results appear in the Output tab, ready to export.

How do I get only the new offers every day?

Turn on "Only new offers since the last run", give the search a monitor name, and put the run on an Apify schedule. The first run saves everything that matches, up to your limit, and remembers it. Every later run saves only offers that were not returned before. Use a different monitor name for each saved search. Net-Empregos publishes well over a thousand offers a day, so narrow the search (a district, a category, keywords, or posted within a few days) so that the first run's limit covers it. If the limit cuts the first run short, the log says so, and later runs will report some of the offers it did not reach as new.

How do I track how many jobs are open in Portugal?

Choose "Market snapshot" and schedule it daily or weekly. Each run returns the number of open offers for the whole board and for every contract type, district, and category, plus the change since your previous snapshot. Add a keyword to track one skill, for example python.

Can I send new offers to Slack, email, or a spreadsheet?

Yes. Apify integrations and webhooks can forward each finished run to Slack, email, Google Sheets, Zapier, Make, or your own endpoint, so a scheduled new-offers run becomes an alert without any code.

Does the Actor need a Net-Empregos account?

No. It reads the public search pages and public offer pages. It never asks for a login, password, cookie, or API key.

Why do few offers have a salary?

Net-Empregos has no salary field, and most Portuguese ads do not state one. The Actor reads an amount from the ad text only when the text clearly gives pay, and leaves the field out otherwise. In a test of 81 real offers, about 6% stated a salary, 17% a number of years of experience, and 30% an education level.

Why are some fields empty for some offers?

Net-Empregos does not publish every detail on every offer. Fields the offer does not show are left out of the row, not filled with placeholders.

Why does a run with full details take longer?

Each offer page is opened separately to read its full details. Turn the option off for quick lists, and on when you need the description, expiry date, or the facts read from the text.

Is it fast?

A plain list of 20 offers takes about 9 seconds and 200 offers about a minute. The Actor reads several result pages at the same time, but deliberately keeps the number of parallel requests low, because the site blocks clients that send large bursts. Opening every offer for full details is the slow part, because each offer is a separate request.

🔗 Other actors