Shine.com Jobs Scraper - India Jobs, Salaries & Descriptions
Pricing
from $1.50 / 1,000 jobs
Shine.com Jobs Scraper - India Jobs, Salaries & Descriptions
Scrape job listings from Shine.com, one of India's largest job sites: title, company, cities, salary, experience, skills, posted date and full description. Search by keyword and city, filter by experience, salary and job type, or paste Shine links. Monitor mode. Export to CSV, JSON or API.
Pricing
from $1.50 / 1,000 jobs
Rating
0.0
(0)
Developer
Steady Scrape
Maintained by CommunityActor stats
0
Bookmarked
4
Total users
3
Monthly active users
2 days ago
Last modified
Categories
Share
Shine.com Jobs Scraper — India jobs with salaries, skills and full descriptions
Scrape job listings from Shine.com, one of India's largest job sites (over 2 lakh live jobs). Search by keyword and city, filter by experience, salary, employment type and top companies, or paste any Shine search link with the filters you set on the site. Every job comes with its title, company, cities, salary band, experience band, skills, posted date and link. Turn on the job page (on by default) to also get the full description, every skill, industry, department, employment type (regular, contractual, internship, work from home), full time / part time, number of vacancies, expiry date, the salary range in rupees and the company profile (description, website, size, founding year, headquarters, social links).
No login, no API key, no browser to configure. Shine lets you page through every job of a search, so a run returns everything a search holds, up to the maximum you set.
What you can use it for
- Job market research in India: which skills, salaries and experience levels employers ask for, city by city.
- Recruitment and staffing leads: companies hiring for a role right now, with their profile and website.
- Job boards and alerts: run on a schedule with monitor mode to receive only the jobs posted since the last run.
- Salary benchmarking: salary bands and rupee ranges by title, city and experience.
- Training data and analytics: thousands of structured job descriptions with skills attached.
Input
| Field | What it does |
|---|---|
| Job titles or keywords | What you would type in Shine's search box: python developer, data analyst, c#. Each keyword is searched in each city. |
| Cities | Bangalore, Pune, Gurgaon, All India… Common spellings (Bengaluru, Gurugram, New Delhi) are understood. Empty = all of India. |
| Shine search links | Any link copied from shine.com after a search, with every filter it carries (department, industry, company…). Read from its first page. |
| Experience / Salary / Employment type | Shine's own filters. Ticking several keeps jobs matching any of them. |
| Top companies only | Shine's "Top companies" switch. |
| Sort by | Relevance or most recent. |
| Posted within the last N days | Keeps only recent jobs, reading newest first and stopping at the first older one. |
| Include the full job page | One extra page per job for the description, company profile and the rest (priced as a detailed job). |
| Max jobs per search | Stops each search after this many new jobs (default 100; 0 = every page). |
| Only new jobs (monitor) | Skips, for free, every job this Actor already delivered to you in an earlier run. |
{"keywords": ["python developer", "data analyst"],"locations": ["Bangalore", "Pune"],"experience": ["3to5"],"postedWithinDays": 7,"includeDetails": true,"maxJobsPerSearch": 200}
Output
One row per job. Example (with the job page, shortened):
{"status": "ok","search": "python developer in Bangalore","position": 1,"jobId": "19829780","title": "Python Developer","companyName": "Right Move Staffing Solutions Private Limited","url": "https://www.shine.com/jobs/python-developer/right-move-staffing-solutions-private-limited/19829780","locations": ["Bangalore"],"experience": "4 to 6 Yrs","salary": "10 - 30 Lakh/Yr","skills": ["python", "azure", "aws", "html", "css", "api", "rest api", "fast api", "react"],"postedAt": "2026-10-16T09:45:58.000Z","badges": ["activelyHiring", "earlyApplicant"],"instantApply": true,"logoUrl": null,"scrapedAt": "2026-10-18T02:21:33.189Z","details": {"description": "We are seeking a skilled Python Developer to join our dynamic team in Karnataka…","descriptionHtml": "<p>We are seeking a skilled Python Developer…</p>","skills": ["python", "azure", "aws", "html", "css", "api", "rest api", "react", "fast api"],"industry": "Accounting & Auditing","departments": ["Finance / Accounts / Tax"],"employmentType": "Regular","jobType": "Full Time","vacancies": null,"expiresAt": "2026-10-31T09:45:56.000Z","postedBy": null,"salaryMinInr": 1000000,"salaryMaxInr": 3000000,"locationStates": [{ "city": "Bangalore", "state": "Karnataka" }],"isTopCompany": false,"company": { "description": "…", "website": null, "size": null, "foundedYear": null, "headquarters": null, "socialLinks": {} }}}
| Field | Meaning |
|---|---|
search | The keyword, keyword and city, or link the row came from. |
position | Place in Shine's results for that search, from 1. |
salary / experience | Shine's bands as printed ("Not Disclosed" when the employer hides the salary). |
postedAt / details.expiresAt | ISO 8601 UTC (Shine shows India time). |
badges | Shine's labels such as "Actively Hiring" (activelyHiring) and "Be an early applicant" (earlyApplicant). |
details | null without the job page, or when that page could not be read (the row is then charged as a plain job). |
details.salaryMinInr / salaryMaxInr | Yearly rupees as Shine stores them; null when Shine shows the salary as not disclosed. A band "below Rs 50,000" is stored with a minimum of 1. |
details.company | null when Shine has no company profile for the job. |
A search or link that gives no job produces one free row with status and reason: no_results,
location_not_found (a city Shine's location filter does not list), invalid (a link that is not a Shine search),
blocked (Shine refused to answer) or unreadable. The run's SUMMARY record lists every search with Shine's total,
pages read, jobs delivered, duplicates and jobs skipped by the monitor.
Pricing
Pay per result, nothing per run:
- US$0.0015 per job as the results page shows it (US$1.50 per 1,000).
- US$0.0025 per job with its full page (US$2.50 per 1,000).
A job found by several of your searches is charged once. Free rows, duplicates and jobs skipped by monitor mode are never charged. Set a maximum cost per run in Apify and the Actor stops before reading pages it cannot charge for.
Limits and notes
- Shine's own location filter is used, so a city must be one Shine lists (its location filter names the places
where it has jobs). A city it does not list gets a free
location_not_foundrow instead of unrelated jobs. - Some descriptions are cut by Shine itself at about 2,000 characters; they arrive as Shine publishes them.
- Recruiters' e-mail addresses and phone numbers are not collected.
- The Actor reads at about one and a half pages a second, so 1,000 jobs with their pages take about 13 minutes (without them, about a minute).
- If Shine refuses requests, the run stops asking and returns what it has; nothing undelivered is charged.
Is it legal?
This Actor reads only public job listings that Shine shows to any visitor without an account: no login, no personal data beyond what employers publish with their jobs (recruiter contact details are left out), and it honours Shine's robots.txt rules for the pages it reads. Check that your use of the data complies with Shine's terms and the laws that apply to you (such as India's DPDP Act or the GDPR) before using it commercially.