Internshala Scraper
Pricing
from $2.00 / 1,000 results
Internshala Scraper
[๐ฐ $2.00 / 1K] Extract internship and fresher-job listings from Internshala โ titles, companies, stipends, salaries, cities, skills, durations, work mode and detail-page descriptions. Filter by category, city, work-from-home, part-time, stipend, salary, duration and special badges.
Pricing
from $2.00 / 1,000 results
Rating
0.0
(0)
Developer
SolidCode
Maintained by CommunityActor stats
1
Bookmarked
289
Total users
7
Monthly active users
11 days ago
Last modified
Categories
Share
Extract internship and fresher-job listings from Internshala โ India's largest platform for internships and entry-level jobs. Pull title, company, city list, stipend or salary, duration, skills, work mode, badges, posting date and listing URL for any search, with an optional one-switch upgrade to full descriptions, perks, openings counts and application deadlines. Built for recruiters, campus placement teams and career platforms who need India's live entry-level hiring inventory without paging through thousands of listings by hand.
Why This Scraper?
- Two feeds, one input โ 7,400+ live internships (monthly stipend) and 15,000+ fresher jobs (annual salary), including 2,300+ work-from-home internships and Internshala's 3,500-listing women-only feed
- 650 cities and 161 role categories, read from Internshala's own published lists rather than a hardcoded menu โ and if a city or category ever stops working, the run tells you and stops instead of quietly handing you the whole site under that label
- Duration counted the way Internshala counts it โ a "2 Weeks" internship is returned under 1 month, and every internship row carries both the verbatim label (
"2 Weeks") and the whole-month number, so you never have to guess which one a value means - Hybrid roles are read, not inferred โ
workModereturnswfh,onsiteorhybrid, taken from the in-office-days marker on the listing itself; about 8% of results are hybrid and would otherwise be labelled onsite - Indian-rupee pay parsed honestly โ
โน 4,00,000 - 6,00,000 /year,4 LPA,โน 3,000 /week,Performance basedandUnpaidall normalise to cleanmin/maxnumbers tagged with their currency and the span they are quoted over, with the original wording kept alongside - Badges that admit what they don't know โ
forWomenandfastResponsecome backtrue,false, or blank when Internshala publishes no marker for that listing, instead of a fabricatedfalse - Your numeric filters are re-checked on every row โ minimum stipend, minimum salary, maximum experience, duration and part-time are re-applied listing by listing using Internshala's own rule (a โน5,000 - 15,000 stipend qualifies for a โน10,000 minimum), and weekly pay is restated per month before the comparison
- One switch for the whole detail page โ description, perks, who-can-apply, openings count, application deadline (converted from IST) and the company profile, filled even on multi-location postings where Internshala publishes no structured data
- From $2.00 per 1,000 results with volume discounts โ you pay per listing saved, not per minute of run time
Use Cases
Recruiting & Talent Sourcing
- Build live feeds of open internships and fresher jobs by city, role, or skill
- Track a competitor's hiring across all their open postings
- Identify which companies are hiring most aggressively for a given role
Career Platforms & Job Boards
- Aggregate Indian internship inventory into your own platform or newsletter
- Power campus placement tools, college career portals, and student communities
- Build daily-digest emails of new openings matching student profiles
Lead Generation & Outreach
- Reach hiring teams at SMBs and startups posting their first internship
- Find companies hiring for niche skills (Data Science, UI/UX, Content Writing)
- Surface "Internship with job offer" listings โ these are pre-placement pipelines worth reaching out to
Market Research & Salary Benchmarking
- Track stipend and salary trends across categories, cities, and durations
- Measure remote vs onsite vs hybrid share for each role family over time
- Compare hiring activity across Bangalore, Mumbai, Delhi, Hyderabad, Pune, Chennai
EdTech & Skill Analytics
- Map demand for specific skills (React, Java, SEO, Tally, Figma) by posting volume
- Inform curriculum design with up-to-date listings of "must-have" skills
- Build skill-gap dashboards for training providers
Getting Started
All internships in Mumbai
The simplest possible run โ every open internship in one city:
{"mode": "internships","location": "Mumbai","maxResults": 200}
Computer-Science work-from-home internships, with full details
Filter by category and remote, then fetch the full description, perks, and deadline for every result:
{"mode": "internships","category": "Computer Science","workFromHome": true,"minStipend": 6000,"durationMonths": ["3", "6"],"includeDetails": true,"maxResults": 500}
Fresher jobs in Bangalore with a salary floor
Switch the mode to jobs and ask for entry-level roles paying at least โน5 lakh per year:
{"mode": "jobs","category": "Web Development","location": "Bangalore","minSalary": 500000,"experienceMax": 1,"maxResults": 300}
Direct search URLs (advanced)
Paste one or more Internshala search URLs to bypass the filter form. Useful for niche pages and saved searches:
{"startUrls": ["https://internshala.com/internships/marketing-internship-in-delhi/","https://internshala.com/internships-for-women/work-from-home-internships/"],"maxResults": 1000}
Input Reference
What to Scrape
| Parameter | Type | Default | Description |
|---|---|---|---|
mode | string | "internships" | Pick Internships (paid, monthly stipend) or Jobs (annual salary, fresher-friendly) |
startUrls | string[] | [] | Optional list of Internshala search URLs. When provided, these override every filter below |
Filters
| Parameter | Type | Default | Description |
|---|---|---|---|
category | string | "" | Role / profile from Internshala's 161 live categories (e.g. Computer Science, Marketing, Finance, Web Development, Content Writing, Data Science). Leave empty for all categories |
location | string | "" | Any of Internshala's 650 cities (Mumbai, Bangalore, Delhi, Hyderabad, Pune, Chennai). Ignored when work-from-home is enabled |
workFromHome | boolean | false | Only include fully remote listings. Disables the city filter |
partTime | boolean | false | Only include part-time roles |
minStipend | integer | empty | Internships only. Minimum monthly stipend in โน. A listing is kept when its stipend range reaches this amount (โน5,000 - 15,000 counts towards a โน10,000 minimum). Weekly amounts are converted to a monthly figure first; unpaid internships are always excluded, and pay that can't be compared in rupees per month is kept, not dropped. Tiers: 2000, 4000, 6000, 8000, 10000 |
minSalary | integer | empty | Jobs only. Minimum annual salary in โน. A job is kept when its salary range starts at or above this amount, after monthly figures are converted to yearly. Tiers: 100000 to 1000000+ |
durationMonths | string[] | [] | Internships only. One or more of 1 month, 2 months, 3 months, 4 months, 5 months, 6 months, 12 months. Each value matches that exact length, and picking several returns every length you selected. Internships quoted in weeks count as their whole-month length, so a two-week internship is returned under 1 month |
experienceMax | integer | empty | Jobs only. Cap on years of experience (0 = fresher-only, max 10) |
specialFilters | string[] | [] | Require one or more badges: Internship with job offer, Early applicant, Fast response from employer, For women. Internshala offers all four on internships only, so a Jobs run ignores them and says so |
Output
| Parameter | Type | Default | Description |
|---|---|---|---|
includeDetails | boolean | false | Fetch the full description, complete skills list, perks, openings count, and application deadline for each listing. Slower but much richer |
maxResults | integer | 100 | How many listings you want. Internshala serves its results in whole pages of 40 - 60 listings and the last page is kept in full rather than cut off, so a run can finish up to about 60 listings above your number โ a limit of 100 typically returns between 100 and 140. Every saved listing counts towards what the run costs, so budget for the higher figure. Set to 0 to collect every available listing |
Output
Each result is one listing. The exact fields depend on mode (internship vs job) and whether includeDetails is on. Here is a typical internship row with details enabled:
{"recordType": "internship","id": "3119378","url": "https://internshala.com/internship/detail/marketing-internship-in-mumbai-acme-3119378","title": "Marketing Internship","company": "Acme Pvt Ltd","companyLogoUrl": "https://internshala-uploads.internshala.com/logo%2Facme-3119378.png","locations": ["Thane", "Navi Mumbai", "Mumbai"],"workMode": "hybrid","workFromHome": false,"partTime": false,"stipend": {"min": 8000,"max": 10000,"currency": "INR","period": "month","raw": "โน 8,000-10,000 /month"},"salary": null,"duration": "3 Months","durationMonths": 3,"experienceYears": null,"skills": ["Digital Marketing", "Content Writing", "SEO"],"badges": {"activelyHiring": true,"earlyApplicant": false,"jobOffer": true,"womenOnly": null,"fastResponse": null},"postedAt": "2 days ago","postedAtIso": "2026-09-16T10:14:23+00:00","applyUrl": "https://internshala.com/internship/detail/marketing-internship-in-mumbai-acme-3119378","scrapedAt": "2026-09-18T08:42:11+00:00","sourceUrl": "https://internshala.com/internships/marketing-internship-in-mumbai/","description": "We're looking for a hands-on marketing intern to support campaigns across...","perks": ["Certificate", "Letter of recommendation", "Flexible hours"],"whoCanApply": "Available for full-time (in-office) internship; can start between 1st Oct and 30th Oct","openings": 3,"applicationDeadline": "2026-10-17T18:29:59+00:00","aboutCompany": "Acme is a Mumbai-based marketing agency working with..."}
Core Fields (Both Internships and Jobs)
| Field | Type | Description |
|---|---|---|
recordType | string | "internship" or "job" |
id | string | Internshala's stable internal ID for the listing |
url | string | Canonical detail-page URL |
title | string | Listing title (e.g. "Marketing Internship") |
company | string | Hiring company name |
companyLogoUrl | string | null | Absolute link to the company logo image. null when the company has not uploaded one โ about 4 listings in 10 |
locations | string[] | One element per city, or a single "Work from home". A posting open in Thane, Navi Mumbai and Mumbai returns three elements, never one run-on string |
workMode | string | wfh, onsite, or hybrid. hybrid is read from the listing's in-office-days marker and appears on roughly 8% of results |
workFromHome | boolean | True if the listing is fully remote |
partTime | boolean | True if the listing is part-time |
skills | string[] | Skills required (from the listing card, or the full list when details are on) |
postedAt | string | Relative posted-at as shown on Internshala (e.g. "2 days ago") |
postedAtIso | string | ISO 8601 UTC timestamp of when the listing was posted |
applyUrl | string | Canonical detail URL โ applying requires an Internshala student login |
sourceUrl | string | The search URL this row was discovered through |
scrapedAt | string | ISO 8601 UTC timestamp of the run |
Badges
| Field | Type | Description |
|---|---|---|
badges | object | {activelyHiring, earlyApplicant, jobOffer, womenOnly, fastResponse} โ the first three are always true or false, the last two are tri-state |
activelyHiring | boolean | Copy of badges.activelyHiring |
earlyApplicant | boolean | Copy of badges.earlyApplicant |
withJobOffer | boolean | Copy of badges.jobOffer โ the listing comes with a pre-placement job offer |
forWomen | boolean | null | Copy of badges.womenOnly. true on listings from the women-only feed, false when the marker is live on the page and this listing lacks it, null when Internshala publishes no marker at all. Never guessed |
fastResponse | boolean | null | Copy of badges.fastResponse, on the same three-way rule as forWomen |
Internship-only fields
| Field | Type | Description |
|---|---|---|
stipend | object | {min, max, currency, period, raw} โ period is usually "month". min/max are 0 for an unpaid internship and null when the stipend is undisclosed ("Performance based", "Competitive stipend"), with raw always carrying the original wording |
duration | string | null | Internship length exactly as Internshala words it โ "3 Months", "2 Weeks", "Not Provided". Present on every internship row |
durationMonths | integer | null | The same length as a whole number of months (1, 2, 3, 4, 5, 6, 12). Internships quoted in weeks are counted the way Internshala's own duration filter counts them, so "2 Weeks" reads as 1. null when the listing doesn't state a length |
Job-only fields
| Field | Type | Description |
|---|---|---|
salary | object | {min, max, currency, period, raw} โ period is usually "year". Populated on every job row that quotes pay, including Indian-format figures like โน 6,00,000 - 8,00,000 /year and 4 LPA; min/max are null for "Competitive salary" |
experienceYears | object | {min, max} years of experience required |
Detail-only fields (only when includeDetails: true)
| Field | Type | Description |
|---|---|---|
description | string | Full internship / job description, plain text |
perks | string[] | Perks list (Certificate, Letter of recommendation, Flexible hours, etc.) |
whoCanApply | string | Eligibility text (start date, full-time/part-time, year of study) |
openings | integer | Total number of positions for this listing |
applicationDeadline | string | ISO 8601 deadline, converted from the IST value Internshala shows |
aboutCompany | string | "About the company" section |
When includeDetails is off, all six detail-only fields are still present but set to null (or [] for perks) โ your downstream schema stays stable.
Tips for Best Results
- Budget for the last page, not your exact number. Internshala hands out results in whole pages of 40 - 60 listings, and the final page is kept in full rather than trimmed โ so
maxResults: 100usually finishes with 100 to 140 listings, and every one of them counts towards the run's cost. The run tells you the ceiling before it starts and the exact overshoot when it ends. Ask for the number you actually want and allow for the page. - Start broad, then narrow. Run with
modeandlocationonly first to see how much data is available, then add filters one at a time. - Use
includeDetails: trueselectively. It visits one extra page per listing, so large sweeps finish faster without it. Run wide first, then re-run a smaller filtered set with details on. - Read
durationanddurationMonthstogether.durationis Internshala's own wording ("2 Weeks", "6 Months") anddurationMonthsis the whole-month bucket it belongs to, so short internships show as1. Filter on the integer, display the string. Internship with job offerfinds pre-placement pipelines. These listings end in a guaranteed offer, so they are the highest-intent employers on the platform โ and the badge exists on internships only, so pickInternshipsfor it.For womenworks the same way: it switches the search to Internshala's dedicated women-only listings, where every result is markedforWomen: true. On a general search that marker isn't published per listing, so the field comes back blank rather than guessed.- Stipend and salary are re-checked on every row. Internshala's own filters are advisory, so each listing is re-validated against your
minStipend/minSalaryusing the same rule Internshala does: an internship qualifies when its stipend range reaches your minimum, a job when its salary range starts at or above yours. Pay quoted over a different span is restated in your floor's unit first, so a โน3,500-a-week internship counts as โน15,167 a month and clears a โน10,000 minimum. Unpaid internships never survive a minimum-stipend search, and listings whose pay can't be compared in rupees are kept rather than guessed at. - A small-city search may include its district. Internshala groups nearby towns together and tops thin city feeds up with extra listings, so a search for a small city can return neighbouring towns as well. Nothing is thrown away โ the run states how many saved listings do not name your city, so you can filter the
locationsfield yourself. startUrlsoverrides everything. WhenstartUrlsis set, every filter field is ignored โ paste the URL you want exactly. If Internshala has retired that address, the run says so rather than silently returning the unfiltered site.
Pricing
From $2.00 per 1,000 results. You pay per listing saved, not per minute of run time, and the price drops automatically with your Apify loyalty tier.
| Results | No discount | Bronze | Silver | Gold |
|---|---|---|---|---|
| 100 | $0.30 | $0.25 | $0.22 | $0.20 |
| 1,000 | $3.00 | $2.50 | $2.20 | $2.00 |
| 10,000 | $30.00 | $25.00 | $22.00 | $20.00 |
| 100,000 | $300.00 | $250.00 | $220.00 | $200.00 |
Internshala serves whole pages of 40 - 60 listings and the last page is kept in full, so a run can save up to about 60 listings above your maxResults โ a limit of 100 typically bills for 100 to 140 results. Set maxResults to the number you want and allow for that page.
Integrations
Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:
- Apify API โ Full programmatic access to runs, datasets, and live results
- Webhooks โ Get notified when a run completes or new data lands
- Google Sheets โ One-click export of every result to a spreadsheet
- Zapier / Make / n8n โ Automate workflows: post new listings to Slack, push leads to your CRM, trigger emails
- Datasets โ Download as JSON, CSV, XML, or Excel for offline analysis
Legal & Ethical Use
This actor is designed for legitimate recruiting research, market analysis, career platforms, and lead generation. Only public listing data is collected โ no private profiles, no candidate PII, no data behind login. Users are responsible for complying with applicable laws and Internshala's Terms of Service. Do not use the extracted data for spam, harassment, or any unlawful purpose.