Scholarships, Competitions & Internships Extractor avatar

Scholarships, Competitions & Internships Extractor

Under maintenance

Pricing

from $0.05 / result

Go to Apify Store
Scholarships, Competitions & Internships Extractor

Scholarships, Competitions & Internships Extractor

Under maintenance

A production-ready Apify Actor that automatically extracts structured information from RSS feeds about scholarships, competitions, internships, and challenges across 11 different categories.

Pricing

from $0.05 / result

Rating

0.0

(0)

Developer

Aadhithya

Aadhithya

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

6 hours ago

Last modified

Share

A production-ready Apify Actor that automatically extracts structured information from RSS feeds about scholarships, competitions, internships, and challenges across 11 different categories.

🎯 What This Actor Does

This Actor reads RSS feeds from Givemechallenge.com and extracts:

  • Title - Challenge/competition name
  • Description - Cleaned and summarized description
  • Deadline - Application deadline (normalized to YYYY-MM-DD format)
  • Awards - Prize money, grants, or scholarships
  • Challenge Link - Direct link to apply/participate
  • Category - The category of the challenge

πŸ“‹ Supported Categories

  • App Challenge
  • Design Challenge
  • Fellowships
  • Ideation Challenge
  • Internships
  • Music and Art Challenge
  • Photography Challenge
  • Poetry Competition
  • Scholarships
  • Video Challenge
  • Writing Challenge

πŸš€ Quick Start

Using Apify Console

  1. Go to Apify Console
  2. Search for saadithya/scholarships-competitions-internships-extractor
  3. Click "Run"
  4. Configure input:
{
"category": "Scholarships",
"maxItems": 20
}
  1. Click "Start"

Using Apify API

curl -X POST \
https://api.apify.com/v2/acts/saadithya~scholarships-competitions-internships-extractor/runs \
-H 'Authorization: Bearer YOUR_API_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"category": "Internships",
"maxItems": 20
}'

Using Node.js Apify Client

const { ApifyClient } = require('apify-client');
const client = new ApifyClient({
token: 'YOUR_API_TOKEN',
});
const runInput = {
category: 'Scholarships',
maxItems: 10,
};
const run = await client.actor('saadithya~scholarships-competitions-internships-extractor').call(runInput);
// Get results
const items = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Found ${items.count} items`);
items.items.forEach(item => {
console.log(`${item.title} - Deadline: ${item.deadline}, Awards: ${item.awards}`);
});

Using Python Apify Client

from apify_client import ApifyClient
client = ApifyClient(token='YOUR_API_TOKEN')
run_input = {
"category": "Ideation Challenge",
"maxItems": 20
}
run = client.actor("saadithya~scholarships-competitions-internships-extractor").call(run_input)
for item in client.dataset(run["defaultDatasetId"]).list_items().items:
print(f"{item.title} - Deadline: {item.deadline}, Awards: {item.awards}")

πŸ“₯ Input Parameters

category (Required)

Type: String (enum dropdown)
Description: Select the category of challenges to extract

Options:

  • App Challenge
  • Design Challenge
  • Fellowships
  • Ideation Challenge
  • Internships
  • Music and Art Challenge
  • Photography Challenge
  • Poetry Competition
  • Scholarships
  • Video Challenge
  • Writing Challenge

deadlineAfter (Optional)

Type: String (YYYY-MM-DD format)
Default: Not set
Description: Only return challenges with deadlines AFTER this date

Example:

{
"category": "Scholarships",
"deadlineAfter": "2026-06-01"
}

maxItems (Optional)

Type: Integer
Default: 20
Range: 1-100
Description: Maximum number of results to return

Example:

{
"category": "Internships",
"maxItems": 50
}

testMode (Optional)

Type: Boolean
Default: false
Description: If enabled, returns a mock item for testing purposes

Example:

{
"category": "App Challenge",
"testMode": true
}

πŸ“€ Output Format

Each extracted item is pushed to the Apify dataset with this structure:

{
"title": "Mastercard Foundation and ASU Graduate Scholarships for Africans",
"description": "Are you an African student looking to pursue a graduate degree? The Mastercard Foundation Scholars Program at Arizona State University provides comprehensive support...",
"deadline": "2026-05-15",
"awards": "$869,000",
"challengeLink": "https://www.mastercardfdn.org/scholarships/",
"category": "Scholarships"
}

πŸ’‘ Usage Examples

Example 1: Find Upcoming Scholarship Deadlines

{
"category": "Scholarships",
"deadlineAfter": "2026-06-01",
"maxItems": 50
}

Example 2: Get All Available Internships

{
"category": "Internships",
"maxItems": 100
}

Example 3: Test the Actor

{
"category": "App Challenge",
"testMode": true
}

Example 4: Extract Latest Design Challenges

{
"category": "Design Challenge",
"maxItems": 10
}

πŸ”§ Technical Details

How It Works

  1. RSS Feed Fetching: Uses the rss-parser library to fetch and parse RSS feeds from Feedburner URLs
  2. Data Extraction:
    • Deadline: Searches for patterns like "Deadline:- DD-MM-YYYY", "Deadline: March 15, 2026"
    • Awards: Extracts from "Awards:- $X,XXX" or similar patterns
    • Challenge Link: Finds anchor tags with "Take this challenge", "Apply Now", etc.
  3. Data Cleaning: Removes HTML tags, normalizes whitespace, truncates long descriptions
  4. Filtering: Applies deadline and maxItems filters
  5. Output: Pushes structured data to Apify dataset

Date Normalization

The Actor handles multiple date formats:

  • DD-MM-YYYY (e.g., 09-04-2026 β†’ 2026-04-09)
  • MM-DD-YYYY (e.g., 04-09-2026 β†’ 2026-04-09)
  • Text formats (e.g., March 15, 2026 β†’ 2026-03-15)
  • ISO formats (e.g., 2026-03-15 β†’ 2026-03-15)

All dates are normalized to YYYY-MM-DD format.

Error Handling

  • RSS Parse Failures: Logs warnings and continues with empty results
  • Item Processing Errors: Skips problematic items without crashing
  • Missing Fields: Uses fallback values ("Not specified")
  • Invalid Input: Validates input and exits gracefully

βš™οΈ Configuration

Timeout

Default: 300 seconds (5 minutes)
Recommended: Keep as is for most use cases

Memory

Default: 1024 MB
Recommended: Increase to 2048 MB if processing >100 items

πŸ“Š Result Formats

Results can be downloaded in multiple formats from Apify Console:

  • JSON
  • JSONL
  • CSV
  • Excel (XLSX)
  • XML
  • HTML

πŸ” Troubleshooting

No Results Returned

  • Verify the RSS feed is accessible
  • Check if category is correctly selected
  • Try increasing maxItems
  • Test with testMode: true first

Missing Deadlines or Awards

  • Not all RSS items contain this information
  • The Actor extracts when available in the content
  • Check the raw RSS content to verify data exists

Build Fails

  • Ensure all dependencies are in package.json
  • Verify Node.js version compatibility
  • Review build logs in Apify Console

Timeout Issues

  • Increase timeout in Actor settings (max 900 seconds)
  • Reduce maxItems parameter
  • Check network connectivity to RSS feeds

🌟 Use Cases

  1. Job Boards: Automatically aggregate internship opportunities
  2. Educational Platforms: Track scholarship deadlines for students
  3. Innovation Hubs: Monitor competition landscapes
  4. Career Services: Provide students with latest opportunities
  5. Research Institutions: Track fellowship opportunities
  6. Media Outlets: Curate challenge listings for audiences

πŸ“ˆ Scheduling

Set up automated runs in Apify Console:

  1. Go to Actor page β†’ "Schedules" tab
  2. Click "Create schedule"
  3. Set frequency (daily, weekly, etc.)
  4. Configure input parameters
  5. Save and activate

πŸ”” Webhooks

Configure webhooks to get notified when runs complete:

  1. Go to Actor page β†’ "Webhooks" tab
  2. Click "Add webhook"
  3. Configure:
    • Event types: ACTOR.RUN.SUCCEEDED, ACTOR.RUN.FAILED
    • Request URL: Your endpoint
    • Payload template: Custom JSON

πŸ“ Version History

v1.0.0

  • Initial release
  • Support for 11 challenge categories
  • Advanced deadline and awards extraction
  • HTML cleaning and text normalization
  • Comprehensive error handling

🀝 Support

πŸ“„ License

ISC

πŸ‘¨β€πŸ’» Author

saadithya


Ready to extract opportunities? Start using the Scholarships, Competitions & Internships Extractor now! πŸš€

For questions or custom features, reach out via Apify Console.