Pricing
from $0.79 / 1,000 results
KeepMePosted Malta Scraper
Scrape job listings from KeepMePosted.com.mt โ Malta's #1 job board. Supply job page URLs and get title, company, location, category, salary, description and more. No API key needed.
Pricing
from $0.79 / 1,000 results
Rating
0.0
(0)
Developer
Actor stats
1
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Extract structured job listings from KeepMePosted.com.mt โ Malta's largest job board with 750+ active vacancies across finance, iGaming, tech, hospitality, and more. Filter by keyword, employment type, or scrape specific URLs. No API key required.
Why this scraper?
๐ฒ๐น Malta's #1 Job Board
Access the full KeepMePosted catalogue โ the leading job board in Malta with 750+ active listings and new jobs added weekly.
๐ Keyword & Employment Type Filters
Search by keyword (title, company, category, description) and filter by Full-Time, Part-Time, or Contract roles. Combine both filters for precise results.
๐ Full Job Descriptions
Every listing includes the complete job description in three formats โ plain text, HTML, and Markdown โ ready for storage, AI processing, or downstream pipelines.
๐ Repost Detection
Cross-run deduplication flags repeated listings with isRepost: true, so downstream pipelines never process the same vacancy twice.
โฐ Daily Feed Ready
Combine daysOld: 7 with skipReposts: true and a scheduler for a clean weekly stream of new Malta jobs.
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
searchQuery | string | "" | Keyword to search in job title, company name, category, and description. Leave empty for all jobs. |
jobBasis | string | "" | Employment type: Full-Time, Part-Time, Contract, or empty for any. |
maxResults | integer | 100 | Maximum number of results to return. |
daysOld | integer | 0 | Only return jobs published within N days. 0 = no filter. |
fetchDetails | boolean | true | Fetch each job's detail page. When disabled, descriptions come from the API summary (usually complete). Disable for faster, cheaper runs. |
skipReposts | boolean | false | Skip jobs already seen in previous runs (90-day memory). |
startUrls | array | [] | Direct KeepMePosted job page URLs to scrape, bypassing search. |
Output schema
| Field | Type | Description |
|---|---|---|
id | string | Job reference code (KMP-105385). |
jobRef | string|null | Same as id. |
url | string | Direct URL to the job listing. |
title | string | Job title. |
company | string|null | Hiring company name. |
companyWebsite | string|null | Company website (null if not published). |
location | string|null | Location in Malta (city or area). |
city | string|null | Same as location. |
country | string | Always "MT" (Malta). |
employmentType | string|null | Full-Time, Part-Time, or Contract. |
category | string|null | Job category (e.g. Software Developer, iGaming & Casino, Chefs). |
publishDate | string|null | Posting date in YYYY-MM-DD. |
publishDateISO | string|null | Same as publishDate. |
expiresAt | string|null | Application deadline in YYYY-MM-DD. |
salaryMin | number|null | Minimum salary (null if not published). |
salaryMax | number|null | Maximum salary (null if not published). |
salaryCurrency | string | Always "EUR". |
salaryPeriod | string|null | Salary period (null if not published). |
descriptionHtml | string|null | Full description as raw HTML. |
descriptionText | string|null | Full description as plain text. |
descriptionMarkdown | string|null | Full description in Markdown. |
source | string | Always "keepmeposted.com.mt". |
scrapedAt | string | ISO 8601 timestamp. |
contentHash | string | 16-char MD5 of id + title + company. |
isRepost | boolean | true if seen in a previous run. |
originalPublishDate | string|null | First-seen publish date for reposts. |
originalUrl | string|null | Original URL for reposts. |
Example output
{"id":"KMP-105385","jobRef":"KMP-105385","url":"https://keepmeposted.com.mt/jobs/Verdi-Hotels-Chef-de-Partie-KMP105385","title":"Chef de Partie","company":"Verdi Hotels","companyWebsite":null,"location":"St. Julian's","city":"St. Julian's","country":"MT","employmentType":"Full-Time","category":"Chefs","publishDate":"2026-03-16","publishDateISO":"2026-03-16","expiresAt":"2026-04-16","salaryMin":null,"salaryMax":null,"salaryCurrency":"EUR","salaryPeriod":null,"descriptionHtml":"<p>At Verdi Hotels, food is more than...</p>","descriptionText":"At Verdi Hotels, food is more than...","descriptionMarkdown":"At Verdi Hotels, food is more than...","source":"keepmeposted.com.mt","scrapedAt":"2026-04-25T06:00:00.000Z","contentHash":"e6d50c3cfaa6c903","isRepost":false,"originalPublishDate":null,"originalUrl":null}
Examples
All iGaming jobs:
{"searchQuery":"igaming","maxResults":100,"fetchDetails":true}
Part-Time roles only:
{"jobBasis":"Part-Time","maxResults":50,"fetchDetails":false}
Finance managers, Full-Time:
{"searchQuery":"manager","jobBasis":"Full-Time","maxResults":20,"fetchDetails":true}
Weekly new jobs feed (schedule this weekly):
{"daysOld":7,"skipReposts":true,"maxResults":200,"fetchDetails":true}
Scrape specific URLs:
{"startUrls":[{"url":"https://keepmeposted.com.mt/jobs/Verdi-Hotels-Chef-de-Partie-KMP105385"}],"fetchDetails":true}
๐ฐ Pricing
$0.99 per 1,000 results โ pay only for successfully retrieved listings.
| Results | Cost |
|---|---|
| 100 | ~$0.10 |
| 1,000 | ~$0.99 |
| 10,000 | ~$9.90 |
Performance
| Run size | Approx. time |
|---|---|
100 jobs (fetchDetails: false) | ~1 min |
100 jobs (fetchDetails: true) | ~8 min |
Full catalogue ~750 jobs (fetchDetails: false) | ~5 min |
Full catalogue ~750 jobs (fetchDetails: true) | ~45 min |
Known limitations
- Keyword search is applied client-side across title, company name, category, and description. Results are always a subset of the full active job catalogue.
- Salary data is rarely published on Maltese job boards;
salaryMin/salaryMaxwill benullfor most listings. daysOldfilter requirespublishDateto be populated. A small number of listings may lack a publish date and are included regardless of this filter.
Technical details
- Memory: 512 MB
- Repost storage: KeyValueStore
keepmeposted-job-dedup, 90-day TTL
Additional services
Need custom filters, scheduled runs, or integration support? Email info@unfencedgroup.nl โ we build on request.
Related scrapers
Other scrapers in our Jobs โ Belgium collection:
- Actiris Scraper
- Jobat.be Scraper Belgium
- Le Forem Job Scraper
- Stepstone.be Belgium Scraper
- VDAB.be Job Scraper
Run it on a schedule
This actor is built for repeat use. Set it to run daily, weekly, or hourly, and the data keeps flowing without you touching it.
- Schedule runs โ open the actor, go to Schedules, and pick a cadence. Each run only charges you for the results it returns.
- Connect it to your stack โ push results straight to Google Sheets, Slack, a webhook, or your database using Apify Integrations. No glue code needed.
- Pull results via API โ every run writes a clean dataset you can fetch with one API call, ready for whatever you build on top of it.
Set it once and it runs on its own.
Need a custom scraper?
Unfenced Group builds Apify actors for any website โ for free.
If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results โ we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.
Get in touch: www.unfencedgroup.nl
