Pnet Job Scraper avatar

Pnet Job Scraper

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Pnet Job Scraper

Pnet Job Scraper

Meet the Pnet Job Scraper, a lightweight actor designed to efficiently extract job listings from Pnet. Fast, reliable, and easy to deploy. For optimal performance and to avoid blocking, using residential proxies is highly recommended. Streamline your recruitment data gathering today!

Pricing

from $1.00 / 1,000 results

Rating

5.0

(3)

Developer

Shahid Irfan

Shahid Irfan

Maintained by Community

Actor stats

2

Bookmarked

21

Total users

8

Monthly active users

10 hours ago

Last modified

Share

What does Pnet Job Scraper do?

Pnet Job Scraper collects public job listings from Pnet.co.za, one of South Africa's major employment websites. Enter a keyword and, optionally, a location, category, or posting-date filter to create a structured dataset of job titles, companies, locations, compensation, descriptions, job URLs, and listing metadata.

The Actor is useful for recruitment research, hiring intelligence, salary analysis, job-board aggregation, career-market monitoring, and data enrichment. Results are saved as individual dataset records that can be exported to JSON, CSV, Excel, XML, or connected to other Apify workflows.

Why use Pnet Job Scraper?

  • South African job-market coverage - Search Pnet listings by role, city, region, and category.
  • Structured recruitment data - Receive consistent fields for job analysis, reporting, and downstream applications.
  • Pagination support - Set the result limit and maximum number of pages for small tests or larger collections.
  • Useful listing context - Capture employment type, category, salary text, work-from-home status, labels, skills, and sponsored or highlighted status when published.
  • Repeatable monitoring - Run the Actor on demand or schedule repeat runs to track new opportunities and changes in hiring demand.
  • Workflow-ready exports - Use Apify datasets with API requests, webhooks, Google Sheets, Make, Zapier, or your own data pipeline.

What data can you extract from Pnet?

FieldTypeDescription
job_idStringPnet job identifier when available.
titleStringJob position title.
job_urlStringDirect URL to the Pnet listing.
companyStringHiring company name, when published.
company_idStringCompany identifier, when available.
company_urlStringCompany profile URL, when available.
company_logoStringCompany logo URL, when available.
locationStringPublished job location.
work_from_homeBooleanWhether the listing is marked as work from home.
post_codeStringPostal code, when available.
travel_timeStringTravel-time information, when published.
date_postedStringPnet's published posting-date value.
publish_fromStringListing publication start timestamp, when available.
publish_toStringListing publication end timestamp, when available.
salaryStringSalary or compensation text, when published.
job_typeStringEmployment type, such as full-time or contract.
job_categoryStringPnet job category.
sectionStringAdditional Pnet classification, when available.
description_textStringJob-description snippet supplied by Pnet.
description_htmlStringThe same available description snippet wrapped for HTML-compatible use.
labelsArrayListing labels, when available.
skillsArraySkills associated with the listing, when available.
top_labelsArrayFeatured or prominent listing labels, when available.
is_anonymousBooleanWhether the employer is marked anonymous.
is_highlightedBooleanWhether Pnet marks the listing as highlighted.
is_sponsoredBooleanWhether Pnet marks the listing as sponsored.
is_top_jobBooleanWhether Pnet marks the listing as a top job.
is_backfilledBooleanWhether the listing is marked as backfilled.
is_cross_postedBooleanWhether the listing is marked as cross-posted.
source_siteStringPartner source name when Pnet provides one.
position_on_pageNumberListing position on the current result page, when available.
position_absoluteNumberOverall listing position, when available.
scraped_atStringISO timestamp for when the record was collected.

Fields are omitted when Pnet does not provide a value. This keeps dataset records free from empty strings, empty arrays, and null values.

How to use Pnet Job Scraper

  1. Open Pnet Job Scraper in Apify Console.
  2. Enter a keyword such as software engineer, graduate, or accountant.
  3. Optionally add a South African location, job category, and posting-date filter.
  4. Set results_wanted and max_pages for the size of the collection.
  5. Run the Actor and review the dataset preview.
  6. Download the results or connect the dataset to an API, webhook, spreadsheet, or automation.

Input Parameters

ParameterTypeRequiredDefaultDescription
keywordStringNo"admin"Search term used to find jobs. If empty, the Actor uses Pnet's admin search path.
locationStringNo""Location filter, such as Johannesburg, Cape Town, or Durban.
categoryStringNo""Pnet job category or industry filter.
postedWithinIntegerNo-Limit listings by recency. Supported values are 1, 3, or 7 days.
results_wantedIntegerNo20Minimum target number of unique job records to save.
max_pagesIntegerNo3 in the supplied inputMaximum number of Pnet result pages to process. The runtime fallback is 5 when omitted.
proxyConfigurationObjectNo-Optional Apify Proxy configuration. It is used when useApifyProxy is set to true.

The Actor converts numeric limits to positive values. The final number of records can be lower than the requested target if Pnet returns fewer listings, pages end, or the source does not provide more unique jobs.

Usage Examples

Collect up to 20 jobs matching a keyword using the supplied default page limit.

{
"keyword": "software engineer",
"results_wanted": 20,
"max_pages": 3
}

Location, category, and recency filters

Narrow the collection to recent data-science roles in Cape Town. postedWithin accepts 1, 3, or 7.

{
"keyword": "data scientist",
"location": "Cape Town",
"category": "Information Technology",
"postedWithin": 7,
"results_wanted": 100,
"max_pages": 10
}

Larger collection with Apify Proxy

Use Apify Proxy for a larger scheduled collection when proxy access is part of your Apify plan.

{
"keyword": "engineer",
"location": "Johannesburg",
"results_wanted": 500,
"max_pages": 25,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": [
"RESIDENTIAL"
],
"apifyProxyCountry": "ZA"
}
}

Sample Output

The following is an example of one dataset item. Optional fields appear only when Pnet publishes them.

{
"job_id": "1234567",
"title": "Senior Software Engineer",
"job_url": "https://www.pnet.co.za/job/senior-software-engineer/1234567",
"company": "Example Technology Solutions",
"company_url": "https://www.pnet.co.za/company/example-technology-solutions",
"location": "Johannesburg, Gauteng",
"work_from_home": false,
"date_posted": "2 days ago",
"salary": "R600,000 - R800,000 per annum",
"job_type": "Full-time",
"job_category": "Information Technology",
"description_text": "Join a software engineering team building and supporting business applications.",
"description_html": "<p>Join a software engineering team building and supporting business applications.</p>",
"labels": [
"Featured"
],
"skills": [
"JavaScript",
"SQL"
],
"is_anonymous": false,
"is_highlighted": true,
"is_sponsored": false,
"is_top_job": false,
"scraped_at": "2026-08-10T10:30:00.000Z"
}

Tips for best results

  • Use a specific keyword when you need a focused dataset, such as Python developer instead of developer.
  • Add a location to compare hiring activity across South African cities or regions.
  • Start with a small results_wanted value to confirm the search matches your needs.
  • Increase max_pages when Pnet has more listings than the first page can show.
  • Use postedWithin for recent-job monitoring, then schedule repeat runs for regular updates.
  • Review the dataset preview because salary, skills, company details, and other fields depend on what each listing publishes.
  • If a run returns fewer records than requested, check whether the search has enough unique public listings and whether the result pages are still available.

Exports and integrations

  • Dataset exports - Download results as JSON, CSV, Excel, XML, or other Apify-supported formats.
  • Apify API - Retrieve completed dataset items or start runs from your own application.
  • Webhooks - Notify another service when a run finishes.
  • Google Sheets - Send job records to a spreadsheet for review, filtering, and reporting.
  • Make and Zapier - Connect new datasets to alerts, CRM updates, dashboards, or internal workflows.
  • Schedules - Run daily, weekly, or custom monitoring jobs from Apify Console.

Frequently Asked Questions

What website does this Actor collect data from?

It collects public job-listing data from Pnet.co.za, with a focus on South African employment searches.

Can I search by keyword and location?

Yes. Use keyword for the role or skill and location for a city, region, or other location value supported by Pnet.

Can I collect only recent Pnet jobs?

Yes. Set postedWithin to 1, 3, or 7 to request listings posted within the selected number of days.

Does the output include full job descriptions?

The output includes the description snippet available in each search result. It does not promise a full detail-page description, so the available text can vary by listing.

Can I export Pnet results to CSV or Excel?

Yes. Apify dataset results can be downloaded in CSV, Excel, JSON, XML, and other supported formats.

Can I run this Actor on a schedule?

Yes. Create an Apify schedule to repeat the same search daily, weekly, or at a custom interval.

Why is a field missing from a job record?

A field is omitted when Pnet does not publish that value for the listing. Salary, company links, skills, labels, and classification fields are not guaranteed for every job.

You are responsible for complying with Pnet's terms, applicable privacy requirements, and local laws. Use public data responsibly, avoid unnecessary collection of personal information, and respect any restrictions that apply to your intended use.

  • USA Jobs Scraper - Collect structured federal job listings for workforce research and hiring intelligence.
  • APEC Jobs Scraper - Extract executive and professional job listings from APEC.fr.
  • Learn4Good Job Scraper - Collect worldwide job, teaching, and career listings for broader employment datasets.

Support

For bugs, missing fields, target-site changes, or feature requests, use the Issues tab on the Actor page. Include the input used, run ID, and a short description of the unexpected result when reporting a problem.

This Actor is intended for legitimate collection of publicly available job-listing data. You are responsible for complying with Pnet's terms of service, applicable laws, privacy rules, and any restrictions related to storing, sharing, or using the collected data.