Internshala Scraper — Internships, Jobs, Stipends & Companies
Pricing
from $1.00 / 1,000 results
Internshala Scraper — Internships, Jobs, Stipends & Companies
Internshala scraper: export internships and fresher jobs with stipend or salary as numbers, duration, experience, locations, work from home, apply-by and posting dates, applicants, openings, skills, perks, full description and company details. Search by keyword, category, city or URL. No login.
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
Logiover
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
a day ago
Last modified
Categories
Features
Share
Internshala Scraper — Internships, Fresher Jobs, Stipends & Hiring Companies
Export internships and jobs from internshala.com — stipend or salary exactly as Internshala shows it plus the numbers, duration or experience, cities, work from home / hybrid / part time, apply-by date and posting time, applicants and openings, skills, perks, the full description, who can apply, and the hiring company (Internshala company page, website, about, hiring since, opportunities posted, candidates hired) — as clean JSON, CSV or Excel, without a login.
Independent tool. Not affiliated with, endorsed by, or sponsored by Internshala or Scholiverse Educare Private Limited. "Internshala" is a trademark of its owner and is used here only to describe the public website this Actor reads.
Internshala Scraper is an Internshala internship scraper and Internshala jobs scraper for India's best-known internship and fresher-jobs platform. It turns any Internshala search — keywords, Internshala's categories (Web Development, Data Science, Marketing, HR, Finance, Content Writing, Graphic Design …), cities (Mumbai, Bangalore / Bengaluru, Delhi, Pune, Hyderabad, Chennai, Kolkata, Noida, Gurgaon / Gurugram …), work from home, part time, minimum stipend, maximum duration, internships with a job offer (PPO), minimum salary in LPA, experience from fresher to 5+ years, a pasted Internshala URL, or the whole site — into structured internship and job data: profile title, stipend as displayed ("₹ 4,000 - 8,000 /month", "Unpaid", "Performance Based", "₹ 5,000 lump sum") with stipend min / max as numbers, currency and period, annual CTC for jobs ("₹ 3,00,000 - 4,00,000 /year") with salary breakup and probation terms, duration in months, the start window, apply-by date, posting time, applicants count, number of openings, skills required, perks, the complete "About the internship / job" text, who can apply, other requirements, and the company block. Use it to scrape internshala.com by keyword, category and city, as an Internshala API alternative (Internshala publishes no public API for its listings), or to export Internshala internships to CSV, Excel or JSON for a spreadsheet, CRM, ATS, BI tool or data warehouse. No Internshala account, no API key, no cookies, no browser.
Placement cells, EdTech and HR-tech companies, staffing agencies, student communities, job aggregators, compensation analysts and labour-market researchers use it for internship stipend data, fresher salary benchmarks, lead lists of companies hiring interns and freshers, daily feeds of new work from home internships, and skills-demand research. Typical searches it answers: Internshala scraper, Internshala internships to Excel, scrape Internshala jobs, paid internships in India list, work from home internship with stipend, stipend wali internship, fresher jobs in Bangalore, internship with job offer (PPO), data science internship Pune, summer internship 2027 list, इंटर्नशिप सूची (internship list), फ्रेशर जॉब्स (fresher jobs), घर से काम इंटर्नशिप (work from home internship) and naukri for freshers export. On 2026-10-25 Internshala listed 7,849 live internships (6,685 in its search plus 1,164 that only its public sitemap lists) and 4,972 jobs; the Actor read all 12,820 postings with full details in 13.4 minutes and the search cards of everything in 81 seconds. All numbers on this page were measured on the Apify platform on 2026-10-25.
Table of contents
- At a glance
- What you get
- Who uses it — 16 workflows
- Cookbook — 15 ready-to-run inputs
- Tutorial: your first run in the Apify Console
- Tutorial: run it from the API
- Input reference
- Output data dictionary
- Real output sample
- Scale and speed (measured)
- What you pay
- Integrations
- Performance tips
- Troubleshooting: every status message explained
- Honest limits
- How it compares
- FAQ
- Glossary
- Is it legal to scrape Internshala?
- Changelog
- Support
At a glance
| Site | internshala.com — India's internship and fresher-jobs platform |
| Postings available | 7,849 internships and 4,972 jobs on 2026-10-25 (Mumbai alone: 965 in-office internships; work from home: 2,206 internships) |
| Search by | keywords, Internshala categories (211 for internships, 205 for jobs), cities and states (600+ locations), pasted Internshala URLs (search pages, company pages, posting pages), or everything |
| Filters | internships or jobs or both, work from home, part time, minimum stipend (₹2,000–10,000+ a month), maximum duration (1–36 months), internships with a job offer (PPO), minimum salary (1–10 LPA), experience (fresher, up to 1–5 years, 5+ years) |
| Per posting | internships 54 columns, jobs 49 columns: title, category, company (name, Internshala page, website, logo, about, location, hiring since, opportunities posted, candidates hired, NGO), locations, work from home / hybrid / part time / international, stipend or CTC (as shown + numbers + currency + period), duration or experience, start window, job offer, apply-by, posting time, applicants, openings, skills, perks, full description, who can apply, other requirements, salary breakup, probation, industry, employment type, states |
| Depth | every posting of any search (Internshala's search pages have no hidden cap — measured: 6,685 of 6,685 internships, 6,251 of 6,251 job-page postings), plus the 1,164 active internships only the sitemap lists on whole-site runs |
| Speed | 30 postings with full details in 6.3 s · 1,000 with full details in 71 s · all 12,820 with full details in 13.4 min · search cards of all 11,655 in 81 s |
| Output | JSON, CSV, Excel, XML, HTML; API, webhooks, Make, Zapier, n8n, Google Sheets, MCP |
| Login / cookies / proxy | None needed (load spreading over Apify datacenter IPs and a capped residential rescue route are built in) |
| Price | $1.50 → $1.00 per 1,000 postings by Apify plan, all included |
What you get
Every row is one Internshala posting. Internships and jobs share most columns; pay and duration columns are named for what they are (stipend… / duration… for internships, salary… / experience… for jobs), so a run of only internships has no empty job columns and the other way round. Values Internshala does not publish are null (or an empty list) — never an empty string or an invented 0. Real examples from 2026-10-25:
- The posting —
id(3320391),type("internship" / "job"),title,url, andcategory, Internshala's own category ("Social Media Marketing", "HR", "Video Making/Editing"), checked against the category list in Internshala's sitemaps. - Where and how —
locations(["Delhi", "Gurgaon", "Noida"]),isWorkFromHome,isHybrid,isPartTime,isInternational, plusstatesandemploymentType("INTERN, FULL_TIME") from the page's structured data. - Pay — internships:
stipendexactly as shown ("₹ 10,000 - 15,000 /month", "Unpaid", "Performance Based", "₹ 5,000 lump sum") withstipendMin/stipendMax(0 for unpaid),stipendCurrency,stipendPeriod, and incentives inadditionalInformation. Jobs:salary("₹ 3,00,000 - 4,00,000 /year"),salaryMin/salaryMax(annual CTC),salaryCurrency,salaryPeriod,salaryBreakup(fixed / variable pay) andprobation. - Duration, experience, dates —
duration("6 Months") withdurationMonths/durationWeeks,startsImmediately,startWindowFrom/startWindowTo;experience("1 year(s)", "No experience required") withexperienceYearsandisFresherJob;applyBy,postedAt,postedAgo("3 days ago"). - Competition —
applicants(474) withapplicantsText("Be an early applicant", "1000+ applicants") andopenings(21). - Job offer after the internship (PPO) —
hasJobOffer,jobOffer("Job offer upto ₹ 3LPA post internship"),jobOfferCtcLpa(3). - The role —
skills,perks(["Certificate", "Letter of recommendation", "Flexible work hours"]), the completedescription,whoCanApply,otherRequirements. - The company —
companyName,companyUrl(Internshala company page),companyWebsite,companyLogoUrl,companyAbout,companyLocation,companyHiringSince("2016-09"),companyOpportunitiesPosted(101),companyCandidatesHired(42),isNgo,industry. - Flags —
isActivelyHiring,isProExclusive,detailsRead,searchQuery,scrapedAt.
Who uses it — 16 workflows
1. College placement cells and training & placement officers
Run it every morning for your students' cities and categories, filter by stipendMin, applyBy and startWindowFrom, and share a curated list — the apply-by date in every row keeps expired internships out. whoCanApply shows city limits and availability rules.
2. EdTech and upskilling companies
skills across thousands of postings is a live map of what employers ask of interns and freshers (Python, MS-Excel, Canva, AutoCAD, Tally …). Count skills by category and city to plan courses and show learners what a new skill unlocks.
3. HR-tech, ATS and recruitment-software sales teams
Companies posting on Internshala are hiring now and often small. companyWebsite, companyUrl, companyOpportunitiesPosted, companyCandidatesHired, companyHiringSince and industry make a lead list sorted by hiring volume — de-duplicate by companyUrl.
4. Staffing and campus-hiring agencies
Find employers with many openings or repeated postings in cities you cover; isFresherJob, experienceYears and salaryMin show who fits a fresher-hiring service.
5. Student communities, Telegram / WhatsApp channels and career blogs
A scheduled run with workFromHome: true, minStipend: "10000" or jobOfferOnly: true produces "top paid WFH internships this week" lists with real numbers, links and deadlines.
6. Job aggregators and niche job boards
Ingest postings with stable ids, clean numbers, ISO dates and plain-text descriptions; postedAt and applyBy drive freshness and expiry.
7. Labour-market researchers and journalists
Measure unpaid internships (stipendMin = 0), stipends by city and category, the spread of remote and hybrid work, job-offer internships and applicants per posting — on the complete live corpus, not a sample.
8. Compensation and reward analysts
salaryMin / salaryMax, salaryBreakup, probation and experienceYears for jobs, and stipendMin / stipendMax plus jobOfferCtcLpa for internships, give fresher and entry-level pay benchmarks by role, city and industry.
9. Startup founders and growth teams
See which competitors hire for which roles, how many and at what pay — an early signal of a new team or market.
10. Investors and analysts
Hiring velocity is a traction signal: companyOpportunitiesPosted, companyCandidatesHired, companyHiringSince and the number of live postings per company show who is scaling.
11. International offices and global employers
isInternational, stipendCurrency / salaryCurrency (USD and others) and isWorkFromHome isolate remote roles with companies abroad that recruit Indian students and graduates.
12. NGOs, CSR teams and volunteering platforms
isNgo, employmentType (VOLUNTEER …) and categories such as Fundraising, Social Work and Campus Ambassador show where non-profits recruit interns and volunteers.
13. AI assistants, RAG and LLM pipelines
Plain-text description, whoCanApply and otherRequirements with structured fields make a clean knowledge base for a career assistant ("paid data science internships in Pune starting next month").
14. Coaching institutes and career counsellors
Show students the skills employers ask for, typical stipends for a role, and which internships lead to a job offer.
15. Skills and market research
Compare demand for tools and languages across categories and cities, or track how fast a new skill ("Prompt Engineering") spreads week by week.
16. Diversity and inclusion programmes
whoCanApply carries Internshala's note "Women wanting to start/restart their career can also apply"; combined with isWorkFromHome, isPartTime and isHybrid it helps programmes for career returners find suitable roles.
Cookbook — 15 ready-to-run inputs
1. A quick look (what the Console pre-fills)
{"opportunityType": "internships","maxResults": 30}
30 internships with full details in about 6.3 seconds.
2. Paid work-from-home internships (₹10,000+ a month)
{"opportunityType": "internships","workFromHome": true,"minStipend": "10000","maxResults": 0}
3. Data science internships in Bangalore and Pune
{"categories": ["Data Science"],"cities": ["Bengaluru", "Pune"],"maxResults": 0}
"Bengaluru", "Gurugram", "Bombay" and other common names are mapped to Internshala's own city names. A city search returns the in-office and hybrid postings in that city; add a second run with workFromHome: true for remote ones.
4. One keyword across internships and jobs
{"opportunityType": "both","keywords": ["python"],"maxResults": 0}
5. Fresher jobs in Mumbai, Pune and Delhi
{"opportunityType": "jobs","experience": "fresher","cities": ["Mumbai", "Pune", "Delhi"],"maxResults": 0}
Every city is a separate search; each gets a fair share of maxResults, and postings found twice are saved once.
6. Jobs paying at least 5 LPA
{"opportunityType": "jobs","minSalaryLpa": 5,"maxResults": 0}
7. Internships with a job offer (PPO)
{"opportunityType": "internships","jobOfferOnly": true,"maxResults": 0}
jobOfferCtcLpa holds the offered CTC ceiling when Internshala shows one.
8. Part-time work-from-home internships for college students
{"workFromHome": true,"partTime": true,"maxResults": 0}
9. Short marketing internships (up to 2 months)
{"categories": ["Marketing", "Digital Marketing", "Social Media Marketing"],"maxDurationMonths": "2","maxResults": 0}
10. Lead list: companies hiring for sales and business development
{"opportunityType": "both","categories": ["Business Development", "Sales"],"maxResults": 0}
Group the rows by companyUrl and sort by companyOpportunitiesPosted or openings.
11. Everything on Internshala, with full details
{"opportunityType": "both","maxResults": 0}
12,820 postings in 13.4 minutes on 2026-10-25: every internship and job of Internshala's search plus the active internships that only the sitemap lists.
12. Everything, search cards only (fastest bulk export)
{"opportunityType": "both","includeDetails": false,"maxResults": 0}
11,655 postings in 81 seconds. The search cards carry title, company, logo, locations, pay, duration or experience, skills shown on the card, posting age and flags; descriptions, apply-by dates, applicants and the company block need details.
13. Paste an Internshala search URL with any filters
{"startUrls": ["https://internshala.com/internships/work-from-home-python-internships/","https://internshala.com/fresher-jobs/jobs-in-pune/"],"maxResults": 0}
Set the filters on internshala.com, copy the address bar and paste it. Company pages (https://internshala.com/internships/internship-at-…/) work too.
14. Specific postings by URL
{"startUrls": ["https://internshala.com/internship/detail/chartered-accountancy-ca-internship-in-delhi-at-bajaj-arora-company1792558504","https://internshala.com/job/detail/accountant-administrative-manager-job-in-ahmedabad-at-raasleela-textile1792391836"]}
15. Daily monitoring of new internships
{"opportunityType": "internships","categories": ["Web Development"],"maxResults": 0}
Schedule it daily and keep the rows whose postedAt is newer than the previous run (or whose id you have not seen) — Internshala lists recent postings first, and a category search is read to its end in seconds.
Tutorial: your first run in the Apify Console
- Open the Actor and click Try for free (or Start).
- Pick Internships, jobs or both, then optionally type keywords, categories or cities — one per line — and tick the filters you need (work from home, part time, minimum stipend …).
- Set Maximum results (0 = no limit) and keep Read every posting's page on for full details.
- Click Start. Rows appear in the Output tab within seconds; the status line shows how many postings, search pages and detail pages are done.
- When the run finishes, open Export and download CSV, Excel, JSON, XML or HTML — or use the Overview, Requirements & perks and Companies views to browse.
- Read the SUMMARY record in the run's Storage → Key-value store for what was read (Internshala's own count per search, pages, detail pages, duplicates skipped, routes used).
Tutorial: run it from the API
1. Get your token
Apify Console → Settings → Integrations → copy your API token.
2. Run and get the data in one call (small runs)
curl -X POST "https://api.apify.com/v2/acts/logiover~internshala-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN&format=csv" \-H "Content-Type: application/json" \-d '{"opportunityType":"internships","workFromHome":true,"minStipend":"10000","maxResults":200}' \-o internshala-wfh-internships.csv
3. Start a run and fetch the data later (big runs)
# startcurl -X POST "https://api.apify.com/v2/acts/logiover~internshala-scraper/runs?token=YOUR_TOKEN" \-H "Content-Type: application/json" -d '{"opportunityType":"both","maxResults":0}'# poll: GET https://api.apify.com/v2/actor-runs/RUN_ID?token=YOUR_TOKEN (status SUCCEEDED)# data: GET https://api.apify.com/v2/datasets/DATASET_ID/items?format=xlsx&token=YOUR_TOKEN
4. Node.js (apify-client)
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('logiover/internshala-scraper').call({opportunityType: 'jobs',experience: 'fresher',cities: ['Bangalore', 'Hyderabad'],maxResults: 500,});const { items } = await client.dataset(run.defaultDatasetId).listItems();for (const job of items) console.log(job.title, job.companyName, job.salary, job.url);
5. Python (apify-client)
from apify_client import ApifyClientclient = ApifyClient("YOUR_TOKEN")run = client.actor("logiover/internshala-scraper").call(run_input={"opportunityType": "internships","categories": ["Data Science", "Machine Learning"],"minStipend": "10000","maxResults": 0,})for row in client.dataset(run["defaultDatasetId"]).iterate_items():print(row["title"], row["companyName"], row["stipend"], row["applyBy"], row["url"])
6. Read the run summary
GET https://api.apify.com/v2/key-value-stores/STORE_ID/records/SUMMARY returns the outcome (COMPLETED, PARTIAL, EMPTY_RESULT …), rows saved, every search with Internshala's own total and how much of it was read, the sitemap figures on whole-site runs, detail pages read, postings that closed meanwhile, duplicates skipped, request counts, HTTP status counts and the routes used.
Input reference
| Field | Type | Default | What it does |
|---|---|---|---|
opportunityType | string | internships | internships, jobs (Internshala's fresher and experienced jobs) or both (de-duplicated). |
keywords | array of strings | [] | Free-text searches like Internshala's search box ("python", "data science"). Each keyword is a separate search. |
categories | array of strings | [] | Internshala categories by name or slug ("Web Development", "web-development", "HR"), checked against Internshala's list (unknown ones are skipped with suggestions). |
cities | array of strings | [] | Cities or states ("Mumbai", "Bengaluru", "Maharashtra"), checked against Internshala's list; "work from home" turns on that filter. |
workFromHome | boolean | false | Only remote postings. |
partTime | boolean | false | Only part-time postings. |
minStipend | string | "" | Internships only: 2000, 4000, 6000, 8000 or 10000 (₹ a month) — the values Internshala's filter accepts; other numbers are rounded down. |
maxDurationMonths | string | "" | Internships only: at most 1, 2, 3, 4, 6, 12, 24 or 36 months. |
jobOfferOnly | boolean | false | Internships only: only internships with a job offer afterwards (PPO). |
minSalaryLpa | integer | 0 | Jobs only: minimum annual CTC in lakhs (1–10). |
experience | string | "" | Jobs only: fresher, 1–5 (jobs asking for at most that many years) or 5plus. |
startUrls | array of strings | [] | Internshala search pages (any filters), company pages or posting pages. With URLs and no keyword / category / city, only the URLs are read. |
includeDetails | boolean | true | Read every posting's page (description, who can apply, perks, openings, applicants, apply-by, start window, salary breakup, probation, company). Off: search-card fields only. |
includeUnlistedPostings | boolean | true | On runs without any filter, keyword or URL: also add active postings that only Internshala's sitemap lists (1,164 internships on 2026-10-25). Needs includeDetails. |
maxResults | integer | 1000 | Stop after this many postings in total; 0 = no limit. |
proxyConfiguration | object | none | Leave empty: the Actor connects directly and spreads load over Apify datacenter IPs by itself, with a capped residential rescue route. Set a proxy only to force one. |
Filters that apply only to internships are ignored for jobs and the other way round (the log says so). Several keywords × categories × cities are combined into one search each.
Output data dictionary
Fill rates were measured on the 12,820 postings of the whole-site run of 2026-10-25 (7,848 internships, 4,972 jobs). "—" = the column does not exist for that type.
| Field | Type | Meaning | Internships | Jobs | Example |
|---|---|---|---|---|---|
id | number | Internshala posting id (the internshipId of the page) — the stable key for de-duplication. | 100 % | 100 % | 3315957 |
type | string | internship or job (Internshala's own label of the posting). | 100 % | 100 % | "internship" |
title | string | Profile / job title as shown. | 100 % | 100 % | "AI Full Stack Development" |
url | string | Posting page on internshala.com. | 100 % | 100 % | "https://internshala.com/interns… |
category | string | Internshala category of the posting (from the page's breadcrumb). | 74.6 % | 95.9 % | "Social Media Marketing" |
companyName | string | Company or organisation name as shown. | 100 % | 100 % | "Itax Easy Private Limited" |
companyUrl | string | The company's page on Internshala. | 99.9 % | 89.9 % | "https://internshala.com/company… |
companyWebsite | string | Company website as linked on the posting. | 49.7 % | 47.6 % | "https://mdlegal.in/" |
companyLogoUrl | string | Company logo image (empty when Internshala shows its placeholder). | 61.0 % | 54.5 % | "https://internshala-uploads.int%E2%80%A6 |
locations | array | Places of the posting as listed (empty list for work from home). | 60.3 % | 82.3 % | ["Mumbai"] |
isWorkFromHome | boolean | Remote (work from home) posting. | 100 % | 100 % | false |
isHybrid | boolean | Location marked (Hybrid). | 100 % | 100 % | false |
isPartTime | boolean | Part-time posting. | 100 % | 100 % | false |
isInternational | boolean | Internshala's International tag (company abroad). | 100 % | 100 % | false |
stipend | string | Internship stipend as shown, e.g. ₹ 4,000 - 8,000 /month, Unpaid, Performance Based. | 100 % | — | "₹ 10,000 - 15,000 /month" |
stipendMin | number | Lower stipend amount (0 for Unpaid). | 99.5 % | — | 5000 |
stipendMax | number | Upper stipend amount (= stipendMin for a fixed stipend). | 99.5 % | — | 15000 |
stipendCurrency | string | Stipend currency code (INR, USD …). | 95.3 % | — | "INR" |
stipendPeriod | string | month, week or lump sum. | 95.3 % | — | "month" |
duration | string | Internship duration as shown, e.g. 6 Months. | 100 % | — | "3 Months" |
durationMonths | number | Duration in months (null when given in weeks). | 98.6 % | — | 3 |
durationWeeks | number | Duration in weeks (only for week-long internships). | 1.0 % | — | 2 |
startsImmediately | boolean | Internship start date shown as Immediately (internships only). | 100 % | — | true |
startWindowFrom | string | Earliest start date accepted (ISO), from Who can apply. | 99.5 % | — | "2026-10-01" |
startWindowTo | string | Latest start date accepted (ISO), from Who can apply. | 99.5 % | — | "2026-11-05" |
hasJobOffer | boolean | Internship with a job offer (pre-placement offer) after it. | 100 % | — | false |
jobOffer | string | Job-offer text as shown, e.g. Job offer upto ₹ 10LPA post internship. | 19.0 % | — | "Job offer upto ₹ 3LPA post inte… |
jobOfferCtcLpa | number | Job-offer CTC ceiling in lakhs per annum when Internshala shows one ("upto ₹ 3LPA"). | 16.4 % | — | 3 |
applyBy | string | Last date to apply (ISO). | 100 % | 99.9 % | "2026-11-06" |
postedAt | string | Posting time from Internshala's posting URL (UTC). | 100 % | 100 % | "2026-10-13T11:34:24.000Z" |
postedAgo | string | Posting age as Internshala shows it, e.g. 3 days ago. | 100 % | 100 % | "3 weeks ago" |
applicants | number | Applicants so far (null while Internshala shows "Be an early applicant"; "1000+" = 1000). | 69.3 % | 51.1 % | 1000 |
applicantsText | string | Applicants line as shown. | 100 % | 100 % | "Be an early applicant" |
openings | number | Number of openings. | 100 % | 100 % | 2 |
skills | array | Skills required. | 100 % | 94.5 % | ["Effective Communication"] |
perks | array | Perks (certificate, letter of recommendation, flexible hours …). | 93.2 % | 46.0 % | ["Certificate", "Letter of recom… |
description | string | About the internship / job (plain text). | 100 % | 100 % | "Selected intern's day-to-day re… |
whoCanApply | string | Who can apply (plain text). | 100 % | 69.0 % | "Only those candidates can apply… |
otherRequirements | string | Other requirements (plain text). | 53.5 % | 63.0 % | "Required Skills: 1. A portfolio… |
additionalInformation | string | Additional information, e.g. stipend structure and incentives (internships only). | 43.6 % | — | "Stipend Structure: Fixed pay: ₹… |
isActivelyHiring | boolean | Internshala's Actively hiring badge. | 100 % | 100 % | false |
isProExclusive | boolean | Internshala PRO exclusive posting. | 100 % | 100 % | false |
isNgo | boolean | Posted by an NGO. | 100 % | 100 % | false |
companyAbout | string | About the company (plain text). | 100 % | 89.9 % | "Synergy Labs is a Gurgaon-based… |
companyLocation | string | Company location when shown in the company block. | 39.5 % | 16.5 % | "Delhi" |
companyHiringSince | string | Hiring on Internshala since (YYYY-MM). | 99.0 % | 89.1 % | "2026-10" |
companyOpportunitiesPosted | number | Opportunities the company has posted on Internshala. | 99.0 % | 89.1 % | 1 |
companyCandidatesHired | number | Candidates the company has hired through Internshala. | 47.2 % | 35.7 % | 1 |
industry | string | Industry from the posting's structured data (part of the postings). | 87.2 % | 75.4 % | "Computer Services" |
employmentType | string | Employment type from the posting's structured data, e.g. FULL_TIME, INTERN. | 87.4 % | 85.2 % | "INTERN, FULL_TIME" |
states | array | States of the locations, from the posting's structured data. | 87.4 % | 84.0 % | ["Maharashtra"] |
detailsRead | boolean | False when the posting page could not be read and the row carries search-card fields only. | 100 % | 100 % | true |
searchQuery | string | The search, URL or sitemap that produced the row. | 100 % | 100 % | "internships" |
scrapedAt | string | When the run read the posting (ISO). | 100 % | 100 % | "2026-10-24T22:35:00.876Z" |
salary | string | Job CTC as shown, e.g. ₹ 3,00,000 - 4,00,000 /year. | — | 100 % | "₹ 2,00,000 - 3,00,000 /year" |
salaryMin | number | Lower annual CTC. | — | 96.3 % | 200000 |
salaryMax | number | Upper annual CTC. | — | 96.3 % | 300000 |
salaryCurrency | string | Salary currency code. | — | 96.3 % | "INR" |
salaryPeriod | string | year. | — | 96.3 % | "year" |
experience | string | Experience asked, e.g. 1 year(s), No experience required. | — | 100 % | "1 year(s)" |
experienceYears | number | Years of experience asked (0 = no experience required). | — | 100 % | 1 |
isFresherJob | boolean | Fresher job (no experience required). | — | 100 % | false |
salaryBreakup | string | Fixed / variable pay breakup when the employer gives one. | — | 35.6 % | "Fixed pay: ₹ 1,80,000 - 4,20,00… |
probation | string | Probation duration and salary when the employer gives them. | — | 10.2 % | "Duration: 3 months · Salary dur… |
Notes on the values:
- Numbers are numbers (stipends, salaries, counts, years), dates are ISO 8601 (
applyBy,startWindowFrom,startWindowToasYYYY-MM-DD;postedAtandscrapedAtas UTC timestamps;companyHiringSinceasYYYY-MM), lists are JSON arrays, text is plain UTF-8 without HTML. postedAtis the posting time Internshala embeds in every posting URL. Checked against thedatePostedInternshala publishes in the structured data of its pages: same calendar day (India time) on 60 of 62 postings, one day earlier on the other two (published the next day).applicantsisnullwhile Internshala shows "Be an early applicant" (it hides small counts); "1000+ applicants" is stored as 1000 with the exact text inapplicantsText.stipendMin/stipendMaxare 0 for "Unpaid"; "Performance Based", "Not provided" and similar keep the text instipendandnullnumbers. Jobs with "Competitive salary" havenullsalary numbers.categoryis only filled with Internshala's own categories (checked against the category list in Internshala's sitemaps); postings whose page links no category, or links a page named after the employer's own title, getnull.industry,employmentTypeandstatescome from the structured data Internshala adds to most posting pages — not every page has it.companyCandidatesHiredappears only when Internshala shows "N candidates hired" for the company;companyLocationonly when the company block names a city.
Real output sample
Real rows saved by the whole-site run of 2026-10-25: one complete internship, and from one job its identity and the job-only columns (the shared columns look like the internship's). Long text fields are shortened here and marked "[shortened]" — in the dataset they are complete:
{"id": 3321443,"type": "internship","title": "Digital Marketing","url": "https://internshala.com/internship/detail/digital-marketing-internship-in-mumbai-at-neuralbits-technologies-private-limited1792651742","category": "Digital Marketing","companyName": "Neuralbits Technologies Private Limited","companyUrl": "https://internshala.com/company/neuralbits-technologies-private-limited-1611045960","companyWebsite": "https://www.neuralbits.com","companyLogoUrl": "https://internshala-uploads.internshala.com/logo%2Fivzcvjc7xyn-10248.jpeg","locations": ["Mumbai"],"isWorkFromHome": false,"isHybrid": false,"isPartTime": false,"isInternational": false,"stipend": "₹ 7,500 - 12,000 /month","stipendMin": 7500,"stipendMax": 12000,"stipendCurrency": "INR","stipendPeriod": "month","duration": "3 Months","durationMonths": 3,"durationWeeks": null,"startsImmediately": true,"startWindowFrom": "2026-10-22","startWindowTo": "2026-11-26","hasJobOffer": true,"jobOffer": "Job offer upto ₹ 3.6LPA post internship","jobOfferCtcLpa": 3.6,"applyBy": "2026-11-21","postedAt": "2026-10-22T06:49:02.000Z","postedAgo": "2 days ago","applicants": 38,"applicantsText": "38 applicants","openings": 2,"skills": ["Digital Marketing", "Email Marketing", "English Proficiency (Spoken)", "English Proficiency (Written)", "Facebook Marketing", "Search Engine Marketing (SEM)", "Search Engine Optimization (SEO)"],"perks": ["Certificate", "Letter of recommendation", "Job offer"],"description": "Selected intern's day-to-day responsibilities include:\n\n1. Social Media & Content: Create and optimize content … [shortened]","whoCanApply": "Only those candidates can apply who:\n1. are available for full time (in-office) internship\n2. can start the in … [shortened]","otherRequirements": "1. Basic understanding of SEO, paid ads, and digital platforms\n2. Familiarity with AI tools for marketing and … [shortened]","additionalInformation": "Job offer:\nOn successful conversion to a permanent employee, the candidate can expect a salary of ₹ 240000 to 360000/year","isActivelyHiring": true,"isProExclusive": false,"isNgo": false,"companyAbout": "Neuralbits is the leading health tech service provider in India, dedicated to revolutionizing healthcare throu … [shortened]","companyLocation": null,"companyHiringSince": "2022-05","companyOpportunitiesPosted": 31,"companyCandidatesHired": 4,"industry": "Computer Services , Health Care","employmentType": "INTERN, FULL_TIME","states": ["Maharashtra"],"detailsRead": true,"searchQuery": "internships","scrapedAt": "2026-10-24T22:35:00.876Z"}
{"id": 3317660,"type": "job","title": "Business Development Associate","url": "https://internshala.com/job/detail/business-development-associate-job-in-bangalore-at-scienceutsav1792050062","category": "Business Development","companyName": "ScienceUtsav","locations": ["Bangalore"],"salary": "₹ 2,50,000 - 3,15,000 /year","salaryMin": 250000,"salaryMax": 315000,"salaryCurrency": "INR","salaryPeriod": "year","experience": "1 year(s)","experienceYears": 1,"isFresherJob": false,"salaryBreakup": "Fixed pay: ₹ 2,40,000 - 3,00,000 /year · Variable pay: ₹ 10,000 - 15,000 /year","probation": null,"applyBy": "2026-11-14","postedAt": "2026-10-15T07:41:02.000Z","applicants": 55,"openings": 4}
CSV / Excel columns (internship rows, in this order): id, type, title, url, category, companyName, companyUrl, companyWebsite, companyLogoUrl, locations, isWorkFromHome, isHybrid, isPartTime, isInternational, stipend, stipendMin, stipendMax, stipendCurrency, stipendPeriod, duration, durationMonths, durationWeeks, startsImmediately, startWindowFrom, startWindowTo, hasJobOffer, jobOffer, jobOfferCtcLpa, applyBy, postedAt, postedAgo, applicants, applicantsText, openings, skills, perks, description, whoCanApply, otherRequirements, additionalInformation, isActivelyHiring, isProExclusive, isNgo, companyAbout, companyLocation, companyHiringSince, companyOpportunitiesPosted, companyCandidatesHired, industry, employmentType, states, detailsRead, searchQuery, scrapedAt
Job rows have the same columns without stipend, stipendMin, stipendMax, stipendCurrency, stipendPeriod, duration, durationMonths, durationWeeks, startsImmediately, startWindowFrom, startWindowTo, hasJobOffer, jobOffer, jobOfferCtcLpa, additionalInformation, and with salary, salaryMin, salaryMax, salaryCurrency, salaryPeriod, experience, experienceYears, isFresherJob, salaryBreakup, probation instead. In a mixed export both sets appear; each row fills the ones of its type.
Scale and speed (measured)
All runs on the Apify platform, default memory (2 GB), between 03:08 and 04:40 India time on 2026-10-25 (21:38–23:10 UTC on 2026-10-24, which is why the sample's scrapedAt shows the 24th).
| Run | Result | Time |
|---|---|---|
| Prefill / first run (30 internships, full details) | 30 postings, first row after 2.4 s | 6.3 s |
| 1,000 internships, default settings (full details) | 1,000 postings, 1,027 answers, 0 refused | 71 s |
Everything on Internshala, full details (opportunityType: both, maxResults: 0) | 12,820 unique postings, 0 duplicates (7,848 internships incl. 1,164 sitemap-only, 4,972 jobs); 13,151 requests, all answered (0 refused) | 806 s |
Everything, search cards only (includeDetails: false) | 11,655 unique postings, 0 duplicates, 332 search pages | 81 s |
| Simulated refusal of the direct connection (30 postings) | 30 postings through Apify datacenter sessions | 8.7 s |
| Simulated refusal of every route except residential (20 postings) | 20 postings through the capped residential rescue route | 17.4 s |
How the whole site is read completely
- Internshala's own search JSON. The search page loads
/internships_ajax/…and/jobs_ajax/…— 40 postings per page (50 on page 1, where 10 featured ones repeat later). The Actor reads the same answers; no browser. - No hidden page cap. Measured on 2026-10-25: the unfiltered internship search pages through to its last posting (6,685 of 6,685), the jobs search too (6,251 of 6,251); category, keyword and work-from-home searches end exactly at Internshala's count. Every posting is de-duplicated by its id.
- The jobs page also lists internships. 1,279 of the 6,251 postings on Internshala's jobs page are internships with a job offer. With
opportunityType: jobsthey are left out (they are internships); withboththey appear once, as internships. - City counts include remote postings. A city headline ("3,170 Internships in Mumbai") counts work-from-home postings too, but the city's pages list only in-office and hybrid ones (965 for Mumbai). The SUMMARY reports both numbers.
- The sitemap knows more. Internshala's sitemap listed 7,849 active internships while its search showed 6,685; the 1,164 others are live pages missing from the search. Whole-site runs add them (
searchQuery: "sitemap …"); the jobs sitemap matched the jobs search exactly. - Per-address limit. Internshala answers one IP address that sends about 15 requests a second with HTTP 403 after roughly a minute (measured). The Actor keeps the direct connection to a modest pace, spreads the rest over Apify datacenter sessions (one IP each, a new IP at once when one is refused) and keeps a capped residential rescue route for the case that every route is refused — so the daily check and small runs always finish.
What you pay
A fixed price per posting in the dataset — search pages, detail pages, connections and compute are included. No monthly rental, no charge for duplicates or for postings your filters excluded.
| Apify plan | Price per 1,000 postings | 1,000 postings | 10,000 postings | 100,000 postings |
|---|---|---|---|---|
| Free | $1.50 | $1.50 | $15.00 | $150.00 |
| Bronze | $1.33 | $1.33 | $13.33 | $133.33 |
| Silver | $1.17 | $1.17 | $11.67 | $116.67 |
| Gold, Platinum, Diamond | $1.00 | $1.00 | $10.00 | $100.00 |
The price is the same with or without details. A complete export of Internshala (12,820 postings on 2026-10-25) costs about $19.23 on the Free plan and about $12.82 on Gold; 100,000 postings are roughly eight weekly whole-site snapshots.
Maximum cost per run
Apify stops every pay-per-result run at its Maximum cost per run (you set it in the run options; the platform also applies a default). The Actor reads that limit when it starts, collects only what it covers, stops cleanly and says so: "Saved 37 postings — this run's maximum cost ($0.05) covers 37 results at the current price. Raise "Maximum cost per run" to get more." (real message of a test run on 2026-10-25 — 37 postings saved, 37 charged; the number depends on your plan's price). The run ends as Succeeded, the SUMMARY says stoppedBy: "MAX_COST", and you pay only for the postings in the dataset.
Integrations
API, apify-client and webhooks
See Tutorial: run it from the API. Add a webhook (Actor → Integrations → Webhooks) on Run succeeded to POST the dataset id to your endpoint or queue — the cleanest way to load new postings into a CRM, ATS or job board.
Make (Integromat)
Apify app: "Run an Actor" with logiover/internshala-scraper and your JSON input, then "Get Dataset Items" into Google Sheets, Slack, Telegram, e-mail or a CRM.
Zapier
Trigger "Finished Actor Run" (or action "Run Actor") in the Apify Zapier app, then "Find Dataset Items" to send every new internship to a sheet, a channel or a CRM record.
n8n
The Apify node runs the Actor and returns the items for any following node (Postgres, Google Sheets, HTTP Request, OpenAI, Telegram …).
Google Sheets and Airtable
Use the Apify Google Sheets integration to append every scheduled run to a sheet; for Airtable use Make, Zapier or n8n, or import the CSV — id is a good primary field.
Scheduling
Actor → Schedules: run daily for your categories and cities, keep only rows with an id you have not seen (or a postedAt after the last run), and drop rows whose applyBy has passed.
Data warehouses (BigQuery, Snowflake, Postgres, S3)
Fetch GET /v2/datasets/{id}/items?format=json (or csv, xlsx, xml) from your ETL tool, or let a webhook trigger the load. Dates are ISO 8601, numbers are numbers, booleans are booleans, lists are arrays.
MCP and AI agents
The Actor works with the Apify MCP server, so Claude, ChatGPT or your own agent can call it as a tool — "find paid work-from-home content writing internships that start this month" — and receive structured rows.
Performance tips
- Search cards first, details for a shortlist. For the whole site run with
includeDetails: false(11,655 postings in 81 s), filter in your sheet, then paste the interesting posting URLs intostartUrlsfor full details. - Use Internshala's filters instead of post-filtering —
categories,cities,workFromHome,minStipend,maxDurationMonths,jobOfferOnly,minSalaryLpaandexperienceshrink the search before anything is downloaded. - Whole-site runs with details take about 13.4 minutes at 2 GB: keep the default 1-hour timeout; with 4 GB of memory the Actor parses pages about twice as fast.
- Several cities or categories in one run — each search gets a fair share of
maxResults, and postings found by several searches are saved once. - Leave the proxy empty. The direct connection plus Apify datacenter sessions is the fastest route; the residential rescue route switches on by itself only when everything else is refused.
Troubleshooting: every status message explained
| Status / outcome | What it means | What to do |
|---|---|---|
COMPLETED: saved N postings (the "maxResults" limit of N). | You got what you asked for. | Raise maxResults (0 = no limit) for more. |
COMPLETED: saved N postings — every posting the search(es) returned. | Every page of every search was read. N can differ from Internshala's headline: duplicates across searches are saved once, city headlines include remote postings, and counts move while a run is going. | — |
COMPLETED: saved N postings — every posting the searches returned plus the sitemap-only ones. | A whole-site run: the search and the sitemap-only postings were read. | — |
PARTIAL: saved N postings — K posting page(s) could not be read (rows from search results keep their search-card fields, detailsRead = false). | K postings' own pages could not be read after retries; postings found by a search keep their search-card data (detailsRead: false), sitemap-only ones are left out. | Paste those URLs into startUrls later. |
PARTIAL: … — K search page(s) could not be read (…) | Rows were saved, but some search pages failed after all retries. | Re-run later; the SUMMARY shows which search was affected. |
PARTIAL: … — the run time limit was reached before K found posting(s) could be read; raise the timeout to collect the rest. | The run's timeout came first; complete rows are saved, the K postings found but not yet read are not saved or charged (foundButNotReadInTime in the SUMMARY). | Raise the timeout in the run options. |
Saved N postings — this run's maximum cost ($X) covers N results at the current price. Raise "Maximum cost per run" to get more. | The run reached your Maximum cost per run (outcome COMPLETED, stoppedBy: MAX_COST). | Raise the limit. |
The run's maximum cost ($X) does not cover a single result — raise "Maximum cost per run". | The limit is below the price of one posting. | Raise the limit. |
EMPTY_RESULT: Internshala answered, but no internships match these filters right now. … | The search exists and is empty (run succeeds). | Fewer filters, another city or category, or both. |
BLOCKED: no postings collected — Internshala could not be reached (…) after N attempt(s). This is an access failure, not an empty result. | Every route was refused (run fails). | Re-run later; the SUMMARY's statusCounts and lastError say what happened. |
FETCH_FAILED: no postings collected — … | Connections failed, or pages failed so that an empty result cannot be confirmed (run fails). | Re-run later. |
INVALID_INPUT: Unknown "opportunityType" … | The type is not internships, jobs or both (run fails). | Fix the input. |
INVALID_INPUT: Every URL in "startUrls" was skipped … | None of the URLs is an internshala.com search, company or posting page (run fails). | Paste internshala.com URLs. |
INVALID_INPUT: None of the categories is an Internshala … category (…) / … cities … | Nothing in categories / cities matched Internshala's lists; the log suggests close matches (run fails). | Use one of the suggested names or slugs. |
Log: Unknown internship category "…" — skipped (did you mean …?) / … was rounded down to … | A category or city did not match (the rest ran), or a stipend / duration value was not one of Internshala's. | Use a suggested or listed value. |
Log: Internshala refused the direct connection (HTTP 403) — pausing it for 75 s … | The platform address hit Internshala's per-address limit; the run continues over datacenter sessions. | Nothing — informational. |
Log: Every other route is refused right now — using a small residential rescue route (capped) … | Direct and datacenter routes were refused at the same time; up to 300 requests go through residential IPs. | Nothing; for very large runs in such a period, re-run later. |
Honest limits
- Live postings only. Internshala removes a posting's page when it closes (the page answers 404 or no longer shows the posting), so there is no public archive of expired internships; schedule runs and keep your own history. Postings that close between the search and their page are skipped and counted (
postingsNotFound). - No contact details. Internshala does not show recruiters' names, phone numbers or e-mail addresses to logged-out visitors — applications go through Internshala — so the dataset has none.
- Applicant counts are partly hidden. While a posting has few applicants Internshala shows "Be an early applicant" instead of a number (
applicants=null), and above 1,000 it shows "1000+". - Search-card skills are shortened. Cards show up to about seven skills with "+N more"; the full list needs details (the default).
- City headlines count remote postings. See How the whole site is read completely; the Actor returns the city's in-office and hybrid postings, which is what the city pages list.
- Structured-data fields are partial.
industry,employmentTypeandstatesexist only where Internshala adds them to the page (about 87 % of internships and 75–85 % of jobs). - Filter values are Internshala's. Stipend, duration, salary and experience filters accept only the values Internshala's own filters offer; other values are rounded down and logged.
- Counts move. New postings arrive every hour, so two runs minutes apart can differ by a few postings.
How it compares
| Option | What you get | Limits |
|---|---|---|
| Browsing internshala.com by hand | Everything a visitor sees | One posting at a time; no export; copy-paste of thousands of postings is not practical |
| Internshala's e-mail alerts and app | New postings matching a profile | For applying, not for data: no export, no numbers, no history |
| An official Internshala API | — | Internshala publishes no public API for its internship and job listings |
| Generic web-scraping tools and browser extensions | Whatever you configure | You build and maintain the selectors, pagination, details, de-duplication and blocking yourself |
| Internshala Scraper | 54 columns per internship, 49 per job, every posting of a search or of the whole site, numbers and ISO dates, SUMMARY and clear outcomes | Live public data only (see Honest limits) |
FAQ
What is Internshala Scraper?
An Apify Actor that exports internships and jobs from internshala.com — with stipend or salary, duration or experience, locations, dates, applicants, openings, skills, perks, the full description and the hiring company — to JSON, CSV or Excel.
Is there an official Internshala API?
Not for listings. Internshala does not publish a public API for its internships and jobs; this Actor reads the same JSON and pages Internshala's own website loads for every visitor.
How do I export Internshala internships to Excel or CSV?
Run the Actor with your filters, then open Export in the run and choose CSV or Excel — or call the dataset URL with format=csv / format=xlsx from the API.
How do I scrape Internshala jobs?
Set opportunityType to jobs (or both), add cities, categories, experience: "fresher" or minSalaryLpa if you like, and run.
Do I need an Internshala account, login, cookies or an API key?
No. Only public pages are read, the way a logged-out visitor sees them.
Do I need proxies to scrape Internshala?
No. Leave the proxy field empty; the Actor spreads its requests over the direct connection and Apify datacenter IPs by itself and has a capped residential rescue route built in.
How many internships can I scrape from Internshala?
All of them: 7,849 live internships and 4,972 jobs on 2026-10-25 — 12,820 postings in one run.
How fast is it?
30 postings with details in about 6.3 s, 1,000 in about 71 s, the whole site in about 13.4 minutes; search cards for everything in 81 s.
How much does it cost to scrape Internshala?
$1.50 per 1,000 postings on the Free plan, down to $1.00 on Gold and above — about $19.23 for the whole site on the Free plan.
Can I get the stipend of every internship?
Yes — stipend exactly as shown plus stipendMin, stipendMax, stipendCurrency and stipendPeriod. Unpaid internships have 0; performance-based ones keep the text with null numbers.
Can I filter paid internships only?
Use minStipend ("2000" up to "10000" a month) — or filter stipendMin > 0 in your sheet.
Can I scrape only work-from-home internships?
Yes: workFromHome: true. Add partTime: true for part-time remote internships.
Can I get internships in a particular city?
Yes: cities: ["Pune"] (several cities = several searches). Common names such as Bengaluru, Gurugram, Bombay or Calcutta are understood.
Why does Internshala show more internships for a city than I got?
Internshala's city headline also counts work-from-home postings, but the city pages list only in-office and hybrid ones. Run a second search with workFromHome: true to add the remote ones; the SUMMARY shows both numbers.
Can I get internships with a job offer (PPO)?
Yes: jobOfferOnly: true. jobOffer holds Internshala's text and jobOfferCtcLpa the CTC ceiling when shown.
Can I scrape fresher jobs from Internshala?
Yes: opportunityType: "jobs" with experience: "fresher", or paste https://internshala.com/fresher-jobs/… URLs.
Does it include the full job description?
Yes, description is the complete "About the internship / job" text in plain text, with whoCanApply and otherRequirements separately.
Does it include the company's website?
Where the company links one — 49 % of postings on 2026-10-25; the company block also gives the Internshala company page, about text, hiring-since month and opportunities posted.
Does it get recruiters' phone numbers or e-mail addresses?
No. Internshala does not show contact details publicly; applications go through Internshala.
Can I paste an Internshala search URL with my filters?
Yes, in startUrls — any search page, fresher-jobs page or company page; it is read to its last page.
Can I scrape single Internshala postings by URL?
Yes — paste /internship/detail/… or /job/detail/… URLs into startUrls.
Are duplicates removed?
Yes. Every posting is saved once per run, by its Internshala id, even when several searches or the sitemap find it.
How do I monitor new internships every day?
Schedule a run for your filters and keep only the ids you have not seen, or rows with postedAt after your last run.
When was a posting published, and until when can I apply?
postedAt (UTC time) and postedAgo ("3 days ago") tell when; applyBy is the deadline; startWindowFrom / startWindowTo say when the internship must start.
Can I see how many people applied?
applicants with Internshala's text in applicantsText — hidden as "Be an early applicant" while the count is small.
What do "Actively hiring" and "PRO exclusive" mean?
Internshala's badge for responsive employers (isActivelyHiring) and its mark for postings highlighted to PRO subscribers (isProExclusive); both postings are public.
Does it work for international internships?
Yes — isInternational flags them, and stipends or salaries keep their currency (USD and others).
Can I export everything on Internshala?
Yes — opportunityType: "both" with maxResults: 0; whole-site runs also add the active internships that only Internshala's sitemap lists.
Can I use the data with AI or an LLM?
Yes — plain text plus structured numbers and dates load easily into a vector store or an MCP tool call.
Why are some columns empty for some rows?
Internshala does not show that value for that posting (no website, no "candidates hired", applicants hidden). Nothing is invented.
I need a field or filter that is missing. Can you add it?
Probably — write to us through the Actor's Issues tab with an example posting.
Glossary
- Internship (इंटर्नशिप) — a short paid or unpaid work placement for students and recent graduates; on Internshala usually 1–6 months.
- Stipend (स्टाइपेंड / वजीफा) — the monthly payment of an intern; Internshala shows it as a range per month, week or as a lump sum.
- Unpaid / Performance Based — internships without a fixed stipend; performance-based ones pay incentives (see
additionalInformation). - Lump sum — one payment for the whole internship instead of a monthly stipend.
- CTC (Cost to Company) — the yearly salary package of a job, including fixed and variable pay.
- LPA (Lakhs Per Annum) — salary in lakhs of rupees a year; 1 LPA = ₹1,00,000 a year.
- Lakh / Crore (लाख / करोड़) — 1,00,000 and 1,00,00,000 rupees; Internshala writes amounts in Indian digit grouping (₹ 2,03,000).
- PPO (Pre-Placement Offer) — a job offer after the internship; Internshala's "Job offer post internship".
- Fresher (फ्रेशर) — a candidate without work experience; "Fresher Job" on Internshala.
- WFH / Work from home (घर से काम) — remote postings.
- Hybrid — part office, part remote.
- Part time — fewer hours than a full-time role, often alongside college.
- Naukri (नौकरी) — Hindi for job.
- Probation — the first months of a job with separate salary terms.
- Apply by — the last date to apply.
- Openings — how many people the employer wants to hire for the posting.
- Be an early applicant — Internshala's line while a posting has few applicants.
- Actively hiring — Internshala's badge for responsive employers.
- PRO exclusive — postings Internshala highlights for its PRO subscribers.
- Who can apply — Internshala's eligibility block (availability, start window, duration, city).
- Campus Ambassador — a common internship category: representing a company or cause in one's college.
- TPO (Training & Placement Officer) — the college official who handles internships and placements.
🤖 AI Agents, MCP & RAG Integration
Internshala Scraper works natively as an on-demand data tool for AI assistants and autonomous workflows.
Connect this Actor directly to Apify AI, Claude Desktop, Cursor, VS Code, Windsurf, LangChain, or LlamaIndex via the official Apify MCP Server — no custom wrapper code needed:
{"mcpServers": {"apify": {"type": "http","url": "https://mcp.apify.com?tools=logiover/internshala-scraper"}}}
- Schema-typed inputs & outputs: Clean JSON records with explicit
.actor/input_schema.jsonand.actor/output_schema.jsondefinitions so LLM agents infer parameters and parse fields accurately without HTML noise. - Bounded & predictable runs: Built-in volume caps and pay-per-result budget guards prevent runaway agent tool loops.
- RAG & automation ready: Stream run datasets straight into vector stores, n8n, Make, Zapier, or webhook pipelines.
Is it legal to scrape Internshala?
The Actor reads only public pages any logged-out visitor can open — no login, no paywall — and collects no contact details (Internshala shows none publicly). It keeps a modest pace per address and backs off when refused. Whether and how you may use the data depends on your purpose and jurisdiction: in India the Digital Personal Data Protection Act, 2023 (DPDP Act), in the EU and UK the GDPR, and Internshala's terms of use apply to what you do with it. Company and posting data is business information, but treat any personal data you combine it with responsibly, keep only what you need, and do not use the data to spam employers or candidates. If in doubt, ask your lawyer.
Changelog
-
2026-11-11: Added reliable terminal run status telemetry and structured Apify AI / MCP Server (
mcp.apify.com) tool configuration. Added direct Issues & Reviews support links and refreshed live maintenance verification. -
2026-11-01: Monthly health check (2026-11-01): a live run on the current build completed successfully and returned data. Input options, output fields and pricing are unchanged.
-
1.0 (2026-10-25) — First release: internships and jobs from Internshala's own search JSON, full posting details and company block, keyword / category / city / work-from-home / part-time / stipend / duration / job-offer / salary / experience filters, Internshala URLs, whole-site runs with the sitemap-only postings, per-address load spreading with a capped residential rescue route, SUMMARY record and clear outcomes.
💬 Support, Issues & Reviews
- Bug reports & target-site changes: Hit an unexpected empty result or selector change? Open a ticket in the Issues tab with your Run ID or sample input — we actively monitor issues and ship fixes fast.
- Feature & field requests: Need an additional data attribute or filter? Request it in the Issues tab.
- Enjoying this Actor? If it saved you engineering time, please consider leaving an honest review on Apify Store or bookmarking logiover/internshala-scraper — organic developer feedback helps others discover reliable tools and keeps maintenance prioritized.