Gab OSINT Scraper
Pricing
from $1.99 / 1,000 results
Gab OSINT Scraper
Scrape public Gab posts, profiles, direct post URLs, and thread context for OSINT investigations, social media monitoring, research, and datasets.
Pricing
from $1.99 / 1,000 results
Rating
0.0
(0)
Developer
Inus Grobler
Maintained by CommunityActor stats
2
Bookmarked
5
Total users
1
Monthly active users
15 hours ago
Last modified
Categories
Share
Extract full public Gab posts, profiles, and optional thread context from usernames, profile URLs, and direct post URLs into a clean Apify dataset. This Gab scraper is built for OSINT research, social media monitoring, brand monitoring, threat intelligence, academic research, and investigative workflows that need full Gab.com post text without maintaining a custom scraper.
At a glance: input examples, output examples, use cases, limitations, troubleshooting, and pricing/cost guidance are included below so you can run small public-data checks before scaling exports.

Why Use This Gab Scraper?
- Scrape known Gab posts by URL and return full post text.
- Collect public Gab profile data and profile-linked posts.
- Expand a direct post into public thread context, including ancestors, replies, and quoted posts when available.
- Export results as JSON, CSV, Excel, XML, or through the Apify API.
- Use cost-first defaults for direct connections, concurrency, retries, and browser fallback without configuring advanced settings.
Best Use Cases
- OSINT investigations that need public Gab posts, usernames, profile URLs, and engagement metrics.
- Monitoring known Gab accounts, public personalities, communities, or narratives.
- Creating research datasets from specific Gab post URLs.
- Enriching an existing list of Gab URLs with post text, timestamps, media URLs, likes, reposts, and replies.
- Building repeatable full-post data pipelines through Apify Console, schedules, webhooks, or API integrations.
What Data Can You Extract?
This Actor returns full post and profile records:
post: full public Gab post data, including text, author, timestamp, engagement counts, media URLs, and canonical post URL.profile: public Gab profile data, including username, display name, bio, follower count, post count, avatar, and profile URL.
Example post result:
{"record_type": "post","id": "105647844879148303","author_username": "TerrenceKWilliams","author_display_name": "TerrenceKWilliams","content": "Public post text from Gab...","timestamp": "2021-01-30T20:43:52.000Z","likes": 123,"reposts": 12,"replies": 8,"media_urls": ["https://..."],"post_url": "https://gab.com/TerrenceKWilliams/posts/105647844879148303","source_type": "post"}
How To Run
Add Gab usernames, profile URLs, or direct post URLs to targets. The Actor automatically detects which type each entry is and returns full post records where posts are available.
Full Post Example Input
{"targets": ["https://gab.com/TerrenceKWilliams/posts/105647844879148303"],"includeThreadContext": false,"maxItems": 1}
Scrape A Gab Post With Thread Context
Use this when you want the target post plus related public replies, ancestor posts, and quoted posts exposed by Gab.
{"targets": ["https://gab.com/TerrenceKWilliams/posts/105647844879148303"],"includeThreadContext": true,"maxItems": 25}
Scrape Public Gab Profiles
{"targets": ["support"],"includeThreadContext": false,"maxItems": 10}
Input Options
targets: Gab usernames, profile URLs, or direct post URLs. You can mix values likesupport,@support,https://gab.com/support, andhttps://gab.com/user/posts/123.includeThreadContext: expands direct post URL runs with public thread context untilmaxItemsis reached.maxItems: maximum number of post results. Profile records do not count against this limit.
The Actor defaults to direct connection mode, cheap cost mode, disabled browser fallback, maximum concurrency of 2, and maximum request retries of 2. Advanced API users may still pass proxyMode, costMode, enableBrowserDiscovery, maxConcurrency, and maxRetries, but the Apify Console keeps those controls hidden to reduce setup friction.
Cost And Reliability Tips
- Use direct Gab post URLs in
targetswhen possible. Direct post URLs are the fastest full-post input. - Keep
proxyModeset todirectfor known public posts and profiles unless the run is blocked or incomplete. - Keep
enableBrowserDiscoveryoff unless you need extra profile post discovery. - Keep
includeThreadContextoff unless you need thread replies or quoted post context. - The default Actor run memory is 512 MB. Direct post-only runs can also be tested at 256 MB; browser discovery and max-coverage runs should use 1024 MB or more.
Python API Example
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run_input = {"targets": ["https://gab.com/TerrenceKWilliams/posts/105647844879148303",],"includeThreadContext": False,"maxItems": 1,}run = client.actor("thescrapelab/gab-osint-scraper").call(run_input=run_input)dataset_id = run["defaultDatasetId"]for item in client.dataset(dataset_id).iterate_items():print(item)
Common Workflows
Monitor Known Gab Posts
Add direct post URLs to targets and schedule the Actor if you want repeated checks.
Collect Thread Context
Use direct post URLs in targets with includeThreadContext: true when the investigation needs the surrounding public conversation, not only the target post.
Build A Full Gab Post Dataset
Add usernames, profile URLs, or direct post URLs to targets, set maxItems, and export the default dataset in your preferred format.
Limitations
- This Actor extracts public data only.
- Private, deleted, unavailable, or blocked Gab content cannot be scraped.
- Profile-linked post collection can vary because Gab may expose different public post data over time.
- Cheap and balanced modes avoid browser fallback by default to reduce cost. Enable browser discovery if you need best-effort profile post-link discovery.
- Keyword, search, tag, hash, and explore discovery inputs are not supported because they are less reliable and more costly.
- Residential proxy mode can help when direct requests are blocked, but it can increase Apify platform usage and runtime.
Pricing
This Actor uses pay-per-result pricing. Each dataset item is one result. Apify platform usage is kept low by default through 512 MB memory, direct connection mode, low retry counts, and disabled browser fallback. Larger or browser-heavy runs may cost more platform usage, especially when residential proxy mode is enabled.
FAQ
Can I scrape Gab without a proxy?
Yes. proxyMode: "direct" is the default because it is the lowest-cost option for known public Gab posts and profiles. Switch to residential only if direct mode is blocked or incomplete.
Will the results include post text?
Yes. This Actor is configured as a full post scraper. Full post records include the content field when Gab exposes the post publicly.
Can this Actor scrape Gab threads?
Yes. Set includeThreadContext to true for direct post URL runs. The Actor will collect available public ancestors, replies, and quoted posts until it reaches maxItems.
Why did a profile return only a profile record?
Gab does not always expose profile post links through the low-cost HTTP/API path. Enable enableBrowserDiscovery or use costMode: "maxCoverage" if you want the Actor to spend more compute trying browser-based profile discovery.
Can I use the results in another app?
Yes. Every run stores results in the default Apify dataset, which can be exported or read through the Apify API.
