Pnet Jobs Search Scraper
Pricing
Pay per usage
Pnet Jobs Search Scraper
Scrape job search results from PNet.co.za with precision. This scraper collects 30+ fields per listing including titles, company details, salary data, locations, skills, and job rankings — perfect for recruiters, job aggregators, and labor market researchers in South Africa.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Alex
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
PNet Jobs Search Scraper: Extract South African Job Listings at Scale
What Is PNet.co.za?
PNet.co.za is South Africa's largest online job board, connecting millions of job seekers with employers across all industries and experience levels. It hosts thousands of active listings ranging from entry-level positions to executive roles. Manually collecting and organizing this data is tedious and error-prone — the PNet Jobs Search Scraper automates the extraction of search results, delivering clean, structured job data for analysis and integration.
Overview
The PNet Jobs Search Scraper extracts job listings from PNet.co.za search result pages, converting search queries into machine-readable datasets. It is designed for:
- Recruiters monitoring job market trends and competitor activity in South Africa
- HR professionals benchmarking salaries and skill requirements across sectors
- Job aggregators feeding PNet listings into multi-platform job boards
- Labor researchers analyzing employment patterns and hiring demand
- Career coaches tracking industry-specific opportunities
Key strengths include support for targeted search URLs (by industry, location, keyword), failure tolerance via ignore_url_failures, and configurable scraping volume per URL.
Input Format
The scraper accepts a JSON configuration object to control what and how much to scrape:
{"urls": ["https://www.pnet.co.za/jobs/design?searchOrigin=Homepage_top-search"],"ignore_url_failures": true,"max_items_per_url": 20}
| Field | Description | Example |
|---|---|---|
urls | Array of PNet search result page URLs to scrape | https://www.pnet.co.za/jobs/design, https://www.pnet.co.za/jobs/marketing?location=johannesburg |
ignore_url_failures | Boolean flag: if true, scraper continues if a URL fails; if false, entire run stops | true or false |
max_items_per_url | Maximum number of job listings extracted per URL (1–100+) | 20, 50, 100 |
Tips:
- Use filtered search URLs (e.g.,
https://www.pnet.co.za/jobs/[category]?location=[city]) to target specific job types or regions - Set
max_items_per_urlbased on your needs:20for quick samples,50–100for comprehensive datasets - Enable
ignore_url_failures: truefor bulk runs to avoid interruptions if a search page is temporarily unavailable
Output Format
Sample output
{"id": 4232678,"title": "VJ 18979 - Design Draughtsman (Mining Equipment) - North West","labels": [],"url": "/jobs--VJ-18979-Design-Draughtsman-Mining-Equipment-North-West-North-West-Professional-Career-Services-Gauteng--4232678-inline.html?rltr=1_1_25_seorl_m_0_0_0_0_0_0","company_id": 12590,"company_name": "Professional Career Services - Gauteng","company_url": "https://www.pnet.co.za/cmp/en/professional-career-services-gauteng-12590/jobs","company_logo_url": "https://www.pnet.co.za/upload_za/logo/P/logoProfessional-Career-Services-Gauteng-12590ZEN.gif","date_posted": "2026-07-14T13:07:19+02:00","location": "North West","is_anonymous": false,"salary": "R35,000 – R40,000 p/m","post_code": null,"partnership": {"is_partnership_job": false,"show_partnership_label": false,"is_backfilled": false,"source_site_friendly_name": "","is_cross_posted": false},"unified_salary": null,"work_from_home": "0","meta_data": {"position_on_page": 1,"position_absolute": 1},"harmonised_id": "7E598A48-3557-4CE8-9D78-D13D83CA0EF9","job_posting_sequence": null,"period_posted_date": null,"publish_from_date": null,"publish_to_date": null,"has_future_posting": false,"fingerprint_count": null,"section": "main","top_labels": [],"skills": [],"text_snippet": "Our client is a specialist <strong>design</strong> company for the mining sector * Detailed <strong>design</strong> and draughting of mineral processing plants and mining equipment, including plant layouts, process flow integration, conveyors, chutes and screening equipment * Minimum 5+ years' experience in <strong>design</strong> draughting * Strong plant layout <strong>design</strong> experience * Experience <strong>designing</strong> conveyors, chutes, screens, mining equipment","cv_to_job_score": null,"is_highlighted": false,"is_sponsored": false,"travel_time": null,"unified_travel_time": null,"is_top_job": false,"is_traffic_from_partner": false,"from_url": "https://www.pnet.co.za/jobs/design?searchOrigin=Homepage_top-search"}
Each scraped job listing returns 30+ structured fields:
Core Identification
| Field | Meaning |
|---|---|
id | Unique job listing identifier within PNet |
title | Job title as displayed on the search result |
url | Direct link to the full job posting |
labels | Category tags assigned to the listing (e.g., "Full Time", "Permanent") |
top_labels | High-priority category labels highlighting key job attributes |
Company Information
| Field | Meaning |
|---|---|
company_id | Unique identifier for the employer |
company_name | Name of the hiring company |
company_url | Company's profile or website URL on PNet |
company_logo_url | URL to the company's logo image |
partnership | Whether the company is a PNet partner or premium advertiser |
is_traffic_from_partner | Boolean flag: true if job traffic originated from a partner source |
Location & Logistics
| Field | Meaning |
|---|---|
location | Primary job location (city, province, or region) |
post_code | Postal code or zip code of the work location |
work_from_home | Boolean: true if remote/WFH is available |
travel_time | Estimated commute time from user location (if applicable) |
unified_travel_time | Standardized travel time value for filtering |
Compensation & Timeline
| Field | Meaning |
|---|---|
salary | Salary or salary range as displayed (raw format) |
unified_salary | Standardized salary value for easy filtering and comparison |
date_posted | Date the listing was published on PNet |
period_posted_date | Generalized posting date (e.g., "1 week ago") |
publish_from_date | Date when the job listing becomes visible |
publish_to_date | Closing date for applications |
has_future_posting | Boolean: true if job is scheduled to post in the future |
Job Attributes & Flags
| Field | Meaning |
|---|---|
is_anonymous | Boolean: true if company details are hidden |
is_highlighted | Boolean: true if listing has paid highlighting/premium visibility |
is_sponsored | Boolean: true if job appears as a sponsored/promoted result |
is_top_job | Boolean: true if job is featured in top positions |
cv_to_job_score | Relevance score comparing user CV to job requirements (0–100) |
Candidate & Content
| Field | Meaning |
|---|---|
skills | Array of required or preferred skills for the role |
text_snippet | Brief excerpt from the job description |
section | Job category section (e.g., "IT", "Sales", "Engineering") |
fingerprint_count | Number of times this job has been viewed/interacted with |
Technical & Metadata
| Field | Meaning |
|---|---|
meta_data | Additional structured metadata about the listing |
harmonised_id | Standardized identifier used across aggregator platforms |
job_posting_sequence | Internal sequence number for the job posting |
How to Use
-
Identify search URLs — Navigate to PNet.co.za and perform a job search. Copy the URL from the search results page (e.g.,
https://www.pnet.co.za/jobs/design). You can filter by category, location, keyword, or any combination. -
Build your configuration — Add one or more search URLs to the
urlsarray. Adjustmax_items_per_urlbased on your data volume needs:20–30: Quick samples or testing50–100: Comprehensive datasets100+: Full market analysis
-
Set failure handling — Keep
ignore_url_failures: trueto ensure the scraper continues even if one URL times out or changes. -
Run the scraper — Initiate the actor and monitor progress in the logs.
-
Export and analyze — Download results as JSON, CSV, or Excel for use in spreadsheets, databases, or BI tools.
Common best practices:
- Use specific search URLs (e.g., by job title or location) to gather targeted datasets
- For salary analysis, rely on the
unified_salaryfield for consistent comparisons - Filter listings using
is_top_job,is_highlighted, oris_sponsoredto segment premium postings - Combine
skillswithtext_snippetfor quick content review without opening each listing
Use Cases & Business Value
- Recruitment analytics: Track hiring trends by industry, location, and salary band in South Africa
- Job aggregation: Feed PNet listings into multi-site job boards or specialized portals
- Salary benchmarking: Compare compensation across roles, companies, and regions using unified salary data
- Market research: Analyze skill demand, in-demand roles, and competitor hiring activity
- Career insights: Help job seekers understand market competitiveness and skill gaps
- HR intelligence: Monitor hiring velocity and talent competition for your industry
By automating data collection, the scraper eliminates manual work and reveals patterns that guide strategic hiring, recruitment planning, and compensation strategy.
Conclusion
The PNet Jobs Search Scraper is a powerful tool for anyone who needs structured South African job market data. With 30+ fields per listing and flexible URL targeting, it transforms unstructured search results into actionable insights. Whether you're a recruiter, researcher, or platform operator, this scraper accelerates your workflow and unlocks competitive advantage through data-driven job market intelligence.