Roblox Game Finder
Pricing
Pay per usage
Roblox Game Finder
Search for Roblox games based on keywords. Results will include the games information including: gameId, keyword, playerCount, thumbnail ,title and url.
Pricing
Pay per usage
Rating
0.0
(0)
Developer

I G
Actor stats
0
Bookmarked
1
Total users
0
Monthly active users
9 hours ago
Last modified
Categories
Share
Roblox Game Finder - Apify Actor
An Apify actor that scrapes Roblox games based on user-provided keywords. The actor searches Roblox for games and returns results that match one or more of the provided keywords.
Features
- Keyword-based search: Search for games using one or more keywords
- Deduplication: Automatically removes duplicate games based on game ID
- Pagination support: Scrapes multiple pages of results
- Robust extraction: Uses multiple fallback methods to extract game information
- Comprehensive data: Extracts title, URL, game ID, description, thumbnail, and player count
Input
The actor accepts the following input parameters:
{"keywords": ["obby", "simulator"],"maxResults": 50,"maxPages": 5,"searchInDescription": false}
Input Schema
- keywords (required): Array of strings - Keywords to search for. Games matching one or more keywords will be returned.
- maxResults (optional): Integer (1-500) - Maximum number of games to return per keyword. Default: 50
- maxPages (optional): Integer (1-20) - Maximum number of pages to scrape per keyword. Default: 5
- searchInDescription (optional): Boolean - If
true, will fetch full game descriptions from detail pages and search for keywords in them. This is slower but more thorough. Default:false
Output
The actor outputs an array of game objects, each containing:
- title: Game title
- url: Full URL to the game page
- gameId: Unique Roblox game ID
- description: Game description (short description from search page, or full description if
searchInDescriptionis enabled) - thumbnail: Game thumbnail image URL (if available)
- playerCount: Current player count (if available)
- rating: Like/favorite percentage (if available)
- keyword: The keyword that matched this game
- scrapedAt: ISO timestamp of when the game was scraped
- Additional fields from game-stat elements (if available):
- visits: Total visits count
- favorites: Number of favorites
- likes: Number of likes
- genre: Game genre/category
- created: Creation date
- updated: Last updated date
- Other stats found in
.game-statelements
Example Output
[{"title": "Adopt Me!","url": "https://www.roblox.com/games/920587237","gameId": "920587237","description": "Adopt cute pets and build your dream home!","thumbnail": "https://...","playerCount": "1.2M","rating": "96%","visits": "30.5B","favorites": "45.2M","likes": "12.5M","genre": "Simulation","keyword": "adopt","scrapedAt": "2024-01-15T10:30:00.000Z"}]
How It Works
- The actor takes keywords as input
- For each keyword, it navigates to Roblox's game search page
- It extracts game information from the search results using multiple selector strategies
- Games are filtered to include only those matching at least one keyword
- Duplicate games (same game ID) are removed
- Results are saved to the Apify dataset
Local Development
✅ No Apify deployment needed! The actor works completely locally using the Apify SDK's local mode.
Prerequisites
- Install Node.js 18+ if you haven't already
- Install dependencies:
$npm install
Testing Locally (No Deployment Required)
The simplest way to test locally:
Method 1: Simple Test Script (Easiest)
Just run:
$npm test
This automatically:
- Reads
INPUT.jsonfor test input - Runs the actor in local mode (no deployment needed)
- Saves results to
./storage/datasets/default/ - Works completely offline
Method 2: Using Environment Variable
Set the APIFY_INPUT_PATH environment variable to point to your input file:
$APIFY_INPUT_PATH=./INPUT.json npm start
Or on Windows (PowerShell):
$env:APIFY_INPUT_PATH="./INPUT.json"; npm start
Method 3: Using Apify CLI (Optional)
If you have Apify CLI installed, you can also use:
npm install -g apify-cliapify run
This is optional - the simple npm test works without any CLI tools.
Method 4: Direct Input (for quick testing)
You can also pass input directly as an environment variable:
$APIFY_INPUT='{"keywords":["obby"],"maxResults":5,"maxPages":1}' npm start
Test Input File
A sample INPUT.json file is included with test keywords. You can modify it to test with different keywords:
{"keywords": ["obby", "simulator"],"maxResults": 10,"maxPages": 2}
Viewing Results
When running locally, results will be:
- Logged to the console - You'll see progress and final count
- Saved to local storage - Results are in
./storage/datasets/default/as JSON files
To view the results:
# After running the test, check the resultscat storage/datasets/default/*.json
Or open the JSON files in the ./storage/datasets/default/ directory.
Important Notes
- ✅ No Apify account needed - Works completely offline
- ✅ No deployment required - Test locally before deploying
- ✅ Local storage - All data saved to
./storage/directory - ✅ Same code - The code works the same locally and on Apify platform
Deployment
To deploy this actor to Apify:
- Push your code to a Git repository
- Create a new actor in Apify
- Connect your Git repository
- Apify will automatically build and deploy your actor
Requirements
- Node.js 18+
- Apify SDK v3
- Playwright for browser automation
Notes
- The actor uses Playwright to handle dynamic content loading
- Multiple fallback selectors are used to handle changes in Roblox's HTML structure
- The actor respects rate limits by using a max concurrency of 2
- Results are automatically deduplicated by game ID